<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">This may also fix the moonlib knob problem.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 30, 2016 at 8:57 PM, Matt Barber <span dir="ltr"><<a href="mailto:brbrofsvl@gmail.com" target="_blank">brbrofsvl@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">I may have found the answer to this. Take a look at the following code.</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">====================================</div><div class="gmail_default" style="font-family:verdana,sans-serif">comment.c, line 316:</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default"><font face="verdana, sans-serif">    if (!glist->gl_havewindow)</font></div><div class="gmail_default" style="font-family:verdana,sans-serif">====================================</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">===================================================</div><div class="gmail_default" style="font-family:verdana,sans-serif">Pd 0.47, g_canvas.h:</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><div class="gmail_default">struct _glist</div><div class="gmail_default">{</div><div class="gmail_default">    t_object gl_obj;            /* header in case we're a glist */</div><div class="gmail_default">    t_gobj *gl_list;            /* the actual data */</div><div class="gmail_default">    struct _gstub *gl_stub;     /* safe pointer handler */</div><div class="gmail_default">    int gl_valid;               /* incremented when pointers might be stale */</div><div class="gmail_default">    struct _glist *gl_owner;    /* parent glist, supercanvas, or 0 if none */</div><div class="gmail_default">    int gl_pixwidth;            /* width in pixels (on parent, if a graph) */</div><div class="gmail_default">    int gl_pixheight;</div><div class="gmail_default">    t_float gl_x1;                /* bounding rectangle in our own coordinates */</div><div class="gmail_default">    t_float gl_y1;</div><div class="gmail_default">    t_float gl_x2;</div><div class="gmail_default">    t_float gl_y2;</div><div class="gmail_default">    int gl_screenx1;            /* screen coordinates when toplevel */</div><div class="gmail_default">    int gl_screeny1;</div><div class="gmail_default">    int gl_screenx2;</div><div class="gmail_default">    int gl_screeny2;</div><div class="gmail_default">    int gl_xmargin;                /* origin for GOP rectangle */</div><div class="gmail_default">    int gl_ymargin;</div><div class="gmail_default">    t_tick gl_xtick;            /* ticks marking X values */</div><div class="gmail_default">    int gl_nxlabels;            /* number of X coordinate labels */</div><div class="gmail_default">    t_symbol **gl_xlabel;           /* ... an array to hold them */</div><div class="gmail_default">    t_float gl_xlabely;               /* ... and their Y coordinates */</div><div class="gmail_default">    t_tick gl_ytick;            /* same as above for Y ticks and labels */</div><div class="gmail_default">    int gl_nylabels;</div><div class="gmail_default">    t_symbol **gl_ylabel;</div><div class="gmail_default">    t_float gl_ylabelx;</div><div class="gmail_default">    t_editor *gl_editor;        /* editor structure when visible */</div><div class="gmail_default">    t_symbol *gl_name;          /* symbol bound here */</div><div class="gmail_default">    int gl_font;                /* nominal font size in points, e.g., 10 */</div><div class="gmail_default"><b>    int gl_zoom;                /* zoom factor (integer zoom-in only) */</b></div><div class="gmail_default">    struct _glist *gl_next;         /* link in list of toplevels */</div><div class="gmail_default">    t_canvasenvironment *gl_env;    /* root canvases and abstractions only */</div><div class="gmail_default"><b>    unsigned int gl_havewindow:1;   /* true if we own a window */</b></div><div class="gmail_default">    unsigned int gl_mapped:1;       /* true if, moreover, it's "mapped" */</div><div class="gmail_default">    unsigned int gl_dirty:1;        /* (root canvas only:) patch has changed */</div><div class="gmail_default">    unsigned int gl_loading:1;      /* am now loading from file */</div><div class="gmail_default">    unsigned int gl_willvis:1;      /* make me visible after loading */</div><div class="gmail_default">    unsigned int gl_edit:1;         /* edit mode */</div><div class="gmail_default">    unsigned int gl_isdeleting:1;   /* we're inside glist_delete -- hack! */</div><div class="gmail_default">    unsigned int gl_goprect:1;      /* draw rectangle for graph-on-parent */</div><div class="gmail_default">    unsigned int gl_isgraph:1;      /* show as graph on parent */</div><div class="gmail_default">    unsigned int gl_hidetext:1;     /* hide object-name + args when doing graph on parent */</div><div class="gmail_default">    unsigned int gl_private:1;      /* private flag used in x_scalar.c */</div><div class="gmail_default">    unsigned int gl_isclone:1;      /* esists as part of a clone object */</div><div class="gmail_default">};</div><div class="gmail_default">===========================================================</div><div class="gmail_default"><br></div><div class="gmail_default">The new gl_zoom member comes before a few of the old members, so if you try to load the library in a version it wasn't compiled against, anything after gl_zoom will be garbage (not sure why it works in 0.47 64 bit, but it may be accessing some misaligned bytes that just happen to work out).</div><div class="gmail_default"><br></div><div class="gmail_default">The fix will simply be to move the gl_zoom member to the end of the _glist declaration.</div><div class="gmail_default"><br></div><div class="gmail_default">Matt</div><div class="gmail_default"><br></div></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Sun, May 22, 2016 at 12:23 PM, Alexandre Torres Porres <span dir="ltr"><<a href="mailto:porres@gmail.com" target="_blank">porres@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr">howdy, [cyclone/comment] from latest available version in deken (0.2 beta-1) works on:<div><br></div><div>Pd Extended 0.42-5</div><div><br></div><div>Pd Vanilla 0.46-7 32 bits</div><div>Pd Vanilla 0.46-7 64 bits<br></div><div><br></div><div>Pd Vanilla 0.47-0 64 bits<br></div><div><br></div><div>but it does not work on pd 0.47-0 32 bits - simply nothing (no comments) show up</div><div><br></div><div>Though I'm working on cyclone, I haven't touched this object yet, I was just testing them all in the new version to see if they load (maybe I'll find more issues?). Anyway, this seems to me more of an issue related to the new pd update than the code itself, potentially affecting other codes/objects. So I'm writing this list to see what we can find that changed in the new version that would collaborate to this.</div><div><br></div><div>code attached</div></div>
<br></div></div>_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="https://lists.puredata.info/listinfo/pd-list" rel="noreferrer" target="_blank">https://lists.puredata.info/listinfo/pd-list</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div>