Heh, not exactly the kind of patching that people prefer to associate with Pd.

~Kyle

On 8/24/06, IOhannes m zmoelnig <[EMAIL PROTECTED]> wrote:
i moved this thread to pd-dev, in order to not bore people with patches
too much...

IOhannes m zmoelnig wrote:
> IOhannes m zmoelnig wrote:
>> attached is the fix for the crash when audio is turned on and no dsp
>> objects are present.
>>
>> who has changed "*ip" to "ip" in the d_ugen:dsp_tick() loop?
>
> i see: it was miller and for good reasons.
>
> while my patch prevented Pd from crashing when no dsp objects were
> present, it crashed Pd when there were dsp object.
>
> so this new patch should really fix it.
>

i discovered that the same problem also happens with the new
"block_bang" feature.

the attached patch fixes this too (for convenience it also includes the
former patch.

btw, i noticed that when blockbanging a subpatch with [bang~] and you
turn audio off (with my patch applied), i get this error message:
"error: bang to block~ or on-state switch~ has no effect"

mfg.asd.r
IOhannes

PS: i hope i can stop this patching soon...:-)


--- d_ugen.c.org        2006-08-24 15:05:04.000000000 +0200
+++ d_ugen.c    2006-08-24 15:30:10.000000000 +0200
@@ -219,11 +219,11 @@

 static void block_bang(t_block *x)
 {
-    if (x->x_switched && !x->x_switchon)
+    if (dsp_chain && x->x_switched && !x->x_switchon)
     {
         t_int *ip;
         x->x_return = 1;
-        for (ip = dsp_chain + x->x_chainonset; ip; )
+        for (ip = dsp_chain + x->x_chainonset; ip&&*ip; )
             ip = (*(t_perfroutine)(*ip))(ip);
         x->x_return = 0;
     }
@@ -333,7 +333,7 @@
     if (dsp_chain)
     {
         t_int *ip;
-        for (ip = dsp_chain; ip; ) ip = (*(t_perfroutine)(*ip))(ip);
+        for (ip = dsp_chain; ip&&*ip; ) ip = (*(t_perfroutine)(*ip))(ip);
         dsp_phase++;
     }
 }


_______________________________________________
PD-dev mailing list
[email protected]
http://lists.puredata.info/listinfo/pd-dev





--

http://theradioproject.com
http://perhapsidid.blogspot.com

(((())))(()()((((((((()())))()(((((((())()()())())))
(())))))(()))))))))))))(((((((((((()()))))))))((())))
))(((((((((((())))())))))))))))))))__________
_____())))))(((((((((((((()))))))))))_______
((((((())))))))))))((((((((000)))oOOOOOO

_______________________________________________
PD-dev mailing list
[email protected]
http://lists.puredata.info/listinfo/pd-dev

Reply via email to