<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; "><span style="font-size: 12pt; ">> On 2012-10-03 15:06, Ed Kelly wrote:</span><br></div><div style="font-family: 'times new roman', 'new york', times, serif; "><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt; ">>> Hi list,<br>>> <br>>> I know you main devs have bigger fish to fry right now, but an<br>>> answer to (some of) my wierdness with Gem (in case you're<br>>> interested) -- the "unable to save file: too many objects" message,<br>>> and related errors (files no longer loaded within the patch, Pd<br>>> seems to lose its bearings/path) only seem to occur on Windows.<br>>> Something gets corrupted in Pd but I don't know what.<br>>>
<br>><br>> the problem is, that on w32 file-handles can be incompatible between<br>> different c-runtime versions and each dll uses the c-runtime it has<br>> been linked too.<br>> this means that file handles opened by one dll (e.g.: Pd-core) might<br>> not be closeable by another dll (e.g. Gem).<br><br>Thanks IOhannes, </div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; " class="yui_3_2_0_37_134931807593881">So there is some sloppiness in Windows, which is hardly a surprise since it's not created with the integrity of a *nix system.</div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; " class="yui_3_2_0_37_134931807593881">Fortunately for me, this piece has to work only on Mac OS X for now - on the percussionist's
MacBook. I can use my old laptop to develop the project for now until I fix my new machine's Ubuntu/Pd/Gem issues. It's good to know there is a solution on the way though.</div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; " class="yui_3_2_0_37_134931807593881"><span style="background-color: transparent; ">Ed</span><br></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 16px; color: rgb(0, 0, 0); background-color: transparent; font-style: normal; " class="yui_3_2_0_37_134931807593881"><br></div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881"><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> on the other side, Pd<0.43 would only provide a function to open files</div><div style="background-color: transparent; "
class="yui_3_2_0_37_134931807593881">> (using all those search paths), but none to close them.</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> this means, that whenever a file is opened via the search-path feature</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> (and Gem uses that a lot), it is impossible to close it - effectively</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> leading to a file-handle leak.</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> </div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> now with Pd-0.43 there finally is a sys_close() function that allows</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> those file-handles to be closed in the proper context (that is: the
pd</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> dll).</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> unfortunately this does not mean that the problem will magically go</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> away by upgrading to Pd-0.43 - the caller (e.g. Gem) has to use the</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> new function in order to have an effect.</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> starting with Gem-0.94, Gem should be able to handle the problem (and</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> even continue to work with older Pd's - at the expense of keeping the</div><div style="background-color: transparent; "
class="yui_3_2_0_37_134931807593881">> file-handle leak with Pd<0.43)</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> </div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> fgamsdr</div><div style="background-color: transparent; " class="yui_3_2_0_37_134931807593881">> IOhannes</div><div style="color: rgb(0, 0, 0); font-family: 'times new roman', 'new york', times, serif; font-size: 16px; font-style: normal; "><br></div></div> </div> </div></body></html>