[PD-dev] Re: [PD] fix for 0.40-0test04 audio-on crash + block_bang
Miller Puckette
mpuckett at imusic1.ucsd.edu
Thu Aug 24 17:43:05 CEST 2006
Fixed... grab test05 :)
M
On Thu, Aug 24, 2006 at 03:39:43PM +0200, IOhannes m zmoelnig 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
> PD-dev at iem.at
> http://lists.puredata.info/listinfo/pd-dev
More information about the Pd-dev
mailing list