Hi List,
within a custom external I try to load an abstraction called "test.pd" and connect it internally. Unfortunately pd segfaults when initializing the external with one of the the following calls:
new_anything(&pd_objectmaker, gensym("test"), 0, NULL);
new_anything(NULL, gensym("test"), 0, NULL);
I'm pretty sure this used to work some versions ago and assume something in the process of creating objects has changed.
Can someone shed a light on this?
In addition I used to assign a pointer to the newly created object by using the global "newest" pointer right after creating it. I remember a remark in the sources stating that this might change in the future. Is this method still valid or is there another way to get a pointer to newly created objects within an external?
-- Orm
On 09/12/2016 07:33 PM, Orm Finnendahl wrote:
Hi List,
within a custom external I try to load an abstraction called "test.pd" and connect it internally. Unfortunately pd segfaults when initializing the external with one of the the following calls:
new_anything(&pd_objectmaker, gensym("test"), 0, NULL); new_anything(NULL, gensym("test"), 0, NULL);
I'm pretty sure this used to work some versions ago and assume something in the process of creating objects has changed.
Can someone shed a light on this?
hmm, none of the Pd headers exports new_anything(), are you using it directly? if not, how are you using it?
gmards IOhannes
Hi IOhannes,
Am Montag, den 12. September 2016 um 19:51:46 Uhr (+0200) schrieb IOhannes m zmoelnig:
hmm, none of the Pd headers exports new_anything(), are you using it directly? if not, how are you using it?
I declare them like this in my code:
extern void new_anything(void *dummy, t_symbol *s, int argc, t_atom *argv); extern t_pd pd_objectmaker;
Then I call the routine directly in my code as specified.
I don't know of any other way to accomplish the task. Is there a recommended way to load abstractions internally?
-- Orm