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...
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...
On 2010-02-25 17:37, SourceForge.net wrote:
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. :)
for what it is worth, i have just created a little object [rawprint] in zexy, that should allow you to inspect messages a bit closer. it's basically a clone of [print] without all the fancy handling of special atoms.
for [foo 1 bar( it will print: "foo" 1.00000 'bar'
the output of [pointer] could print: "pointer" pointer[0xBFD62658]
the selector is indicated with double-quotes and ordinary symbols with single-quotes.
it's dedicated to all those who always wanted to see what's in a message. i don't see any usefulness in itself (apart from demystifying messages)
mfgasdr IOhannes
On Thu, 2010-02-25 at 18:22 +0100, IOhannes m zmoelnig wrote:
it's dedicated to all those who always wanted to see what's in a message.
Thanks!
i don't see any usefulness in itself (apart from demystifying messages)
Hehe... Of course, there's nothing mystical about it, if you know the source.
Roman
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
Hallo, IOhannes m zmoelnig hat gesagt: // IOhannes m zmoelnig wrote:
for what it is worth, i have just created a little object [rawprint] in zexy, that should allow you to inspect messages a bit closer. it's basically a clone of [print] without all the fancy handling of special atoms.
for [foo 1 bar( it will print: "foo" 1.00000 'bar'
the output of [pointer] could print: "pointer" pointer[0xBFD62658]
the selector is indicated with double-quotes and ordinary symbols with single-quotes.
So the selector of a pointer-message *is* "pointer"? And why doesn't route [route] it? Puzzled ...
Ciao