<html><head></head><body>This problem has a series of fixes spread all across the code. It is not one instance but literally dozens. Just when I thought I had them all I found one last lingering one just a couple of weeks ago. That said I think pd-l2ork&#39;s implementation is now rock solid with all its redraw issues and quirks fixed.<br>
<br>
Coming soon, infinite undo :-). I already have half of the undo actions implemented, including a number that are entirely missing in vanilla, but there are still some fundamental changes that need to take place so I&#39;m hoping to finish it by the end of the week. If you&#39;re curious about the latest dev snapshot knowing that it is currently unstable, try checking out the pd-l2ork from the git repository. For a stable (albeit older) version you can always visit the L2Ork website.<br>
<br>
Cheers!<br>
<br>
Ivica Ico Bukvic, D.M.A<br>
Composition, Music Technology<br>
Director, DISIS Interactive Sound &amp; Intermedia Studio<br>
Director, L2Ork Linux Laptop Orchestra<br>
Assistant Director, CCTAD<br>
Virginia Tech<br>
Department of Music<br>
Blacksburg, VA 24061-0240<br>
(540) 231-6139<br>
(540) 231-5034 (fax)<br>
<a href="http://disis.music.vt.edu">disis.music.vt.edu</a><br>
<a href="http://l2ork.music.vt.edu">l2ork.music.vt.edu</a><br>
<a href="http://ico.bukvic.net">ico.bukvic.net</a><br><br><div class="gmail_quote">Hans-Christoph Steiner &lt;hans@at.or.at&gt; wrote:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre style="white-space: pre-wrap; word-wrap:break-word; font-family: sans-serif"><br />Hey Krzysztof,<br /><br />Glad to see you posting again on pd-dev!  :)  Thanks for the breakdown<br />on the bug, that should be helpful, especially combined with pd-l2ork. <br />Jonathan, do you know which release date introduced this fix in<br />pd-l2ork?  Then we can isolate it.  Otherwise its difficult to navigate<br />the pd-l2ork commit history.<br /><br />.hc<br /><br /><br />On Mon, Dec 12, 2011, at 17:40, Jonathan Wilkes wrote:<br />&gt; HiKrzysztof,<br />&gt;      I believe Ivica fixed this bug in Pd-l2ork back in March.  From <a href="http://l2ork.music.vt.edu/data/pd/Changelog">http://l2ork.music.vt.edu/data/pd/Changelog</a>:<br />&gt; *fixed problem where doubly-nested gops still caused double-entry bug<br />&gt; after cut/undo inside the abstraction.<br />&gt; <br />&gt; <br />&gt; I haven't run into the double-entry problem in Pd-l2ork since then, but I<br />&gt; can confirm
it's still a problem in 0.43.<br />&gt; <br />&gt; -Jonathan<br />&gt; <br />&gt; <br />&gt; ----- Original Message -----<br />&gt; &gt; From: Krzysztof Czaja &lt;czaja@chopin.edu.pl&gt;<br />&gt; &gt; To: pd-dev &lt;pd-dev@iem.at&gt;<br />&gt; &gt; Cc: <br />&gt; &gt; Sent: Monday, December 12, 2011 8:15 PM<br />&gt; &gt; Subject: [PD-dev] deadly leak<br />&gt; &gt; <br />&gt; &gt; Hi Pd gurus,<br />&gt; &gt; <br />&gt; &gt; ever found a single keystroke or a mouse click was duplicated<br />&gt; &gt; on a patch?  A strange bug which always turns out to be fatal<br />&gt; &gt; at the point of closing the patch?<br />&gt; &gt; <br />&gt; &gt; Hit by several such crashes one after another I went hunting.<br />&gt; &gt; <br />&gt; &gt; What I found was that there is always a t_editor created for<br />&gt; &gt; a GOP graph.  The constructor is invoked by the first<br />&gt; &gt; glist_findrtext() call aimed at anything inside of that GOP<br />&gt; &gt; (this occurs when the parent is
being mapped).<br />&gt; &gt; <br />&gt; &gt; Thus, the editor_new() for a GOP is called, but the<br />&gt; &gt; corresponding editor_free() seems never to be called.<br />&gt; &gt; <br />&gt; &gt; The reason why this is not an innocent leak, but a crasher<br />&gt; &gt; is quite subtle.<br />&gt; &gt; <br />&gt; &gt; For any t_editor, there is a t_guiconnect object created and<br />&gt; &gt; bound to a symbol made up from the address of the editor's<br />&gt; &gt; owner (a glist).  Since the editor is zombiefied, so is the<br />&gt; &gt; guiconnect, and the symbol is never unbound.<br />&gt; &gt; <br />&gt; &gt; The trouble begins when another canvas is allocated at the<br />&gt; &gt; address freed by the late owner of the zombie.  The editor is<br />&gt; &gt; created, and a new t_guiconnect is bound to the old symbol.<br />&gt; &gt; <br />&gt; &gt; Now, if any message is sent to the symbol, it is caught by<br />&gt; &gt; two t_guiconnect objects, both pointing to the same
address:<br />&gt; &gt; their 'x_who' pointer.  Hence, all messages from pd-gui to<br />&gt; &gt; the new canvas are duplicated.  The agony is terminated by<br />&gt; &gt; the second copy of the message 'menuclose'.<br />&gt; &gt; <br />&gt; &gt; I believe this bug has never been dealt with.  So, in case<br />&gt; &gt; you consider it worthwhile, could someone forgive me my<br />&gt; &gt; slothfulness and file this thing into the <a href="http://sf.net">sf.net</a> bug tracker<br />&gt; &gt; or open a github's issue, whichever is more appropriate<br />&gt; &gt; these days.<br />&gt; &gt; <br />&gt; &gt; Krzysztof<br />&gt; &gt; <br />&gt; &gt;<hr /><br />&gt; &gt; Pd-dev mailing list<br />&gt; &gt; Pd-dev@iem.at<br />&gt; &gt; <a href="http://lists.puredata.info/listinfo/pd-dev">http://lists.puredata.info/listinfo/pd-dev</a><br />&gt; &gt; <br />&gt; <br />&gt;<hr /><br />&gt; Pd-dev mailing list<br />&gt; Pd-dev@iem.at<br />&gt; <a
href="http://lists.puredata.info/listinfo/pd-dev">http://lists.puredata.info/listinfo/pd-dev</a><br />&gt; <br /></pre></blockquote></div></body></html>