[PD-dev] [ pure-data-Bugs-2957058 ] pointer to [route symbol]-[print] crashes pd

SourceForge.net noreply at sourceforge.net
Thu Feb 25 17:37:12 CET 2010


Bugs item #2957058, was opened at 2010-02-23 07:11
Message generated for change (Comment added) made by fbar
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=2957058&group_id=55736

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 7
Private: No
Submitted By: Jonathan Wilkes (jancsika1)
Assigned to: Nobody/Anonymous (nobody)
Summary: pointer to [route symbol]-[print] crashes pd

Initial Comment:
[namecanvas foo]

[traverse foo, bang(
|
[pointer]
|
[route symbol]
|
[print]

1) a pointer message is erroneously routed as a symbol
2) this crashes Pd
3) [route pointer] doesn't route a pointer

----------------------------------------------------------------------

>Comment By: Frank Barknecht (fbar)
Date: 2010-02-25 17:37

Message:
Yep, a gpointer is not simply a message composed of "pointer" and some
actual pointer blob. I don't know the exact details myself and don't really
understand the source code, but they seem to be something very "special"
just like signals are. As you know, [print] shows them as a not very
helpful "(gpointer)", but if you pass a pointer to [list prepend set]-[list
trim] and into a message box: There pointers show up as "(pointer)" with
the "g" missing.  Anyway don't bother  trying [route (pointer)], it doesn't
work either. :)

In the end we probably have to accept that gpointers don't have a
"printable" selector, just like audio signals don't have one. Introducing a
print- and routable selector as "pointer" may be useful, or maybe it's not,
as some people may already use "pointer" as a meta-message in their
patches, for example to handle mouse-"pointer" events or so. 

----------------------------------------------------------------------

Comment By: Jonathan Wilkes (jancsika1)
Date: 2010-02-25 06:54

Message:
Hm, I'm just not understanding something about gpointers-- I'd just assumed
when you send a pointer message it consists of the selector "pointer"
followed by the gpointer itself (gridflow's [display] seems to confirm
this).  But clearly something else is going on because [route pointer]
doesn't currently work for gpointers, nor will [pointer] accept a gpointer
that has passed through [pointer $1( (though [route] will, without
crashing, and output a usable gpointer that has the selector "list").

It also seems like "pointer 1 2 3" is an unchecked case of "bad arguments
to message 'pointer'".  So I guess I'm saying I agree that [route pointer]
should route according to the selector "pointer", I just don't understand
why a gpointer wouldn't match under those conditions.

----------------------------------------------------------------------

Comment By: Frank Barknecht (fbar)
Date: 2010-02-23 09:40

Message:
Hi Jonathan,

I raised the priority as crashes are really serious. I disagree with your
item 3), though. [route pointer] should not route GPointers, but
meta-messages starting with the symbol "pointer" e.g. 

[pointer 1 2 3(
|
[route pointer]
|

It does that just fine. 

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=2957058&group_id=55736




More information about the Pd-dev mailing list