Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17887
Modified Files:
Tag: devel_0_39
desire.c
Log Message:
[bng] [tgl] etc all register a receive-symbol (augggh)
Index: desire.c
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.c,v
retrieving revision 1.1.2.65
retrieving revision 1.1.2.66
diff -C2 -d -r1.1.2.65 -r1.1.2.66
*** desire.c 11 Apr 2006 20:25:33 -0000 1.1.2.65
--- desire.c 14 Apr 2006 19:39:21 -0000 1.1.2.66
***************
*** 10895,10910 ****
} t_nbx;
- static int iemgui_clip_size(int size);
- static void iemgui_size(t_iemgui *x);
- static void iemgui_subclass (t_class *c);
- t_iemgui *iemgui_new(t_class *qlass);
- void iemgui_propertiesfn(t_gobj *x, t_glist *owner);
- static void iemgui_constrain(t_iemgui *x);
t_symbol *s_empty;
int convert_color2(int x);
- static void iemgui_init(t_iemgui *x, t_floatarg f);
void binbuf_update(t_iemgui *x, t_symbol *qlass, int argc, t_atom *argv);
- static /*bool*/ int iemgui_loadbang (/*t_iemgui*/ void *x);
- static /*bool*/ int iemgui_forward (/*t_iemgui*/ void *x); /* was put_in2out */
typedef struct t_foo { int argc; t_atom *argv; t_binbuf *b; } t_foo;
--- 10895,10901 ----
***************
*** 11200,11223 ****
static void gatom_bang(t_gatom *x) {
! if (x->a_atom.a_type == A_FLOAT)
! {
if (x->a_text.te_outlet)
outlet_float(x->a_text.te_outlet, x->a_atom.a_w.w_float);
! if (*x->a_expanded_to->s_name && x->a_expanded_to->s_thing) {
if (x->a_symto == x->a_symfrom) goto err;
! pd_float(x->a_expanded_to->s_thing, x->a_atom.a_w.w_float);
}
} else if (x->a_atom.a_type == A_SYMBOL) {
if (x->a_text.te_outlet)
outlet_symbol(x->a_text.te_outlet, x->a_atom.a_w.w_symbol);
! if (*x->a_symto->s_name && x->a_expanded_to->s_thing) {
if (x->a_symto == x->a_symfrom) goto err;
! pd_symbol(x->a_expanded_to->s_thing, x->a_atom.a_w.w_symbol);
}
}
return;
err:
! pd_error(x, "%s: atom with same send/receive name (infinite loop)",
! x->a_symto->s_name);
}
--- 11191,11214 ----
static void gatom_bang(t_gatom *x) {
! t_symbol *s = x->a_expanded_to;
! if (x->a_atom.a_type == A_FLOAT) {
if (x->a_text.te_outlet)
outlet_float(x->a_text.te_outlet, x->a_atom.a_w.w_float);
! if (*s->s_name && s->s_thing) {
if (x->a_symto == x->a_symfrom) goto err;
! pd_float(s->s_thing, x->a_atom.a_w.w_float);
}
} else if (x->a_atom.a_type == A_SYMBOL) {
if (x->a_text.te_outlet)
outlet_symbol(x->a_text.te_outlet, x->a_atom.a_w.w_symbol);
! if (*x->a_symto->s_name && s->s_thing) {
if (x->a_symto == x->a_symfrom) goto err;
! pd_symbol(s->s_thing, x->a_atom.a_w.w_symbol);
}
}
return;
err:
! pd_error(x, "%s: atom with same send/receive name (infinite loop)",
! x->a_symto->s_name);
}
***************
*** 11869,11872 ****
--- 11860,11869 ----
}
+ t_symbol *pd_makebindsym(t_pd *x) {
+ char buf[42];
+ sprintf(buf,".x%lx",(long)x);
+ return gensym(buf);
+ }
+
t_iemgui *iemgui_new(t_class *qlass) {
t_iemgui *x = (t_iemgui *)pd_new(qlass);
***************
*** 11884,11887 ****
--- 11881,11885 ----
x->fcol = 0x000000;
x->lcol = 0x000000;
+ pd_bind((t_pd *)x,pd_makebindsym((t_pd *)x));
return x;
}