hi, i just noticed a bug when setting the "receive"-label of a gui-object via the [receive $1( message. while the label get's updated in the properties-box, it does not unbind from the old label and does not bind to the new label.
this is because the old (iemgui-x_rcv) and new (rcv) labels are compared for equality (btw, wouldn't comparing the symbol-addresses be faster than string-comparing the character arrays ?) *after* they are set to the same value.
iemgui_receive() (line 378 of g_all_guis.c from the CVS (and pd-0.37..0.38test4)) reads: iemgui->x_rcv = rcv = canvas_realizedollar(iemgui->x_glist, rcv);
but shoud rather read: rcv = canvas_realizedollar(iemgui->x_glist, rcv);
("iemgui->x_rcv = rcv" will be set later anyhow)
and could the debugging lines 356-357 be left out ?
mfg.as.dr IOhannes
sure enough... thanks. To apear in Test 6...
M
On Wed, Sep 15, 2004 at 06:59:07PM +0200, IOhannes m zmoelnig wrote:
hi, i just noticed a bug when setting the "receive"-label of a gui-object via the [receive $1( message. while the label get's updated in the properties-box, it does not unbind from the old label and does not bind to the new label.
this is because the old (iemgui-x_rcv) and new (rcv) labels are compared for equality (btw, wouldn't comparing the symbol-addresses be faster than string-comparing the character arrays ?) *after* they are set to the same value.
iemgui_receive() (line 378 of g_all_guis.c from the CVS (and pd-0.37..0.38test4)) reads: iemgui->x_rcv = rcv = canvas_realizedollar(iemgui->x_glist, rcv);
but shoud rather read: rcv = canvas_realizedollar(iemgui->x_glist, rcv);
("iemgui->x_rcv = rcv" will be set later anyhow)
and could the debugging lines 356-357 be left out ?
mfg.as.dr IOhannes
PD-dev mailing list PD-dev@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-dev