----- Original Message -----
From: Claude Heiland-Allen claude@goto10.org To: pd-list@iem.at Cc: Sent: Friday, May 18, 2012 7:08 AM Subject: Re: [PD] variable receive objects?
On 14/05/12 19:43, Jonathan Wilkes wrote:
From: IOhannes m zmoelnigzmoelnig@iem.at On 2012-05-14 05:02, John Harrison wrote:
I've used those 2 objects a lot and thought they seemed
pretty
stable...
that's because the "trivial" case (where receiving data
and
changing the receive label are completely independent of each other (stackwise)) won't create much of a problem.
How do I manifest the bug?
See attached. Uses iem_r, though it should make no difference which settable-receive you use.
WARNING: clicking the "boom" message makes Pd segfault :WARNING
To understand this you need to know that pd stores a receiver in the symbol table. When there is only one receiver, it's just a pointer to the object, but when there's more than one there's a proxy object that contains a list. When you change a receiver it can end up deleting the proxy object if the receiver count for a symbol drops from 2 to 1. Deleting an object while code is executing in its context -> boom.
Thanks, Claude.
I just want to point out that this affects every iemgui as well.
Claude
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list