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