[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