[PD] comparing symbols in external

Miller Puckette msp at ucsd.edu
Sat May 3 09:44:40 CEST 2014


Strange things like this can happen if someone inadvertently writes
a new string into an existing symbol... i.e., never do this:
strcat(sym->s_name, "cat").

MAybe there was already a symbol somewhere else whose name is "cat" and
then you'll have 2 symbols with teh same name but different addresses.
(I've seen people do this, in various ways, before).

cheers
Miller

On Sat, May 03, 2014 at 03:22:19AM -0400, Jaime E Oliver wrote:
> Hi all, 
> 
> I am trying to compare two symbols, one incoming in a list into an external and the other one stored internally in the external.
> 
> It compiles fine, but I don't get a match.
> 
> c code is below. Ideas on what I'm missing?
> 
> J
> 
> 
> void testtext_input(t_testtext *x, t_symbol *selector, int argcount, t_atom *argvec) {
> 	int i;
> 	const t_symbol *storedsymbol = gensym("mysymbol");
>     for (i = 0; i < argcount; i++) {
>     	if (argvec[i].a_type == A_SYMBOL) {
> 	    	if ( argvec[i].a_w.w_symbol->s_name == storedsymbol)	post("found match!");
> 	}
> }
> _______________________________________________
> Pd-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list



More information about the Pd-list mailing list