I am having a problem using Windows Vista with the newest version of GEM loaded in the newest version of pd-vanilla. I have not tested this on other OSes or on other builds of pd.
I use dynamic coding frequently with GEM to create a large number of 3d objects. I have noticed that dynamically creating abstractions more than about 70 times (in a single Pd session) causes a strange error that says:
(object name) ... couldn't create error: (object name): no such object
(70 times being a case where I had many instances of an abstraction containing one 3d object and a few rotate and translate objects)
When this occurs, I am unable to load any more abstractions (dynamically or manually) but I am able to create regular objects. However, it is always accompanied by an inability to save, which produces the error:
error: (save path): Bad file descriptor
The only way to fix this is to restart pd and hope that I don't lose much unsaved work.
I'm fairly certain that this is a GEM related issue, since I have used the same technique to instantiate thousands of non-GEM abstractions without this problem. I have not tested to see if the problem happens by creating 70+ instances manually; however, it is definitely cumulative and the problem eventually happens despite clearing and remaking only a few instances.
I've been able to alleviate this problem somewhat by compiling a [textfile] with all the individual objects I would like to create into a single .pd file and then dynamically creating that as an abstraction. However, the problem still occurs eventually after reinstantiating that abstraction or by dynamically creating GEM objects which are not appropriate to combine into a single abstraction. I also happened to notice that pd seems to be using a relatively large amount of RAM when this happens, which might point to some memory leak.
Can anyone shed any light onto this problem? I have generally solved this by saving before anything is dynamically created, but it makes debugging very frustrating. Is there something more I can do to prevent this, or is this a problem someone has experienced in something other than GEM?
Thanks, -Stephen