Hi All, I was working with Dave Philips to try to see what is going on in an orchestra of his using Jean-Pierre Lemoine's AVSynthesis and I think I've found an infinite loop in Vosim. In Opcodes/Vosim.c, in the vosim function, the following code is what creates an infinite loop: if (p->pulstogo == 0) { /* bypass regular synthesis and fill output with zeros */ while (p->timrem && nsmps) { *ar++ = FL(0.0); --p->timrem; --nsmps; } /* Done with perf-block? */ if (nsmps == 0) { /* Here we could override (extreme) timrem if kfund has increased...? */ /* But then we'd also have to record event start time(?) */ break; } /* else goto top of while loop to make a new event */ ++nsmps; continue; } What happens I'm finding is that p->timrem = 0, and nsmps != 0, that while block doesn't run, nsmps increases one, then decreases one when the continue pushes out to the outside while loop that has the --nsmps. I'm using GDB and stepping line by line, I see timrem checked for 0, vosim_event gets called, but then timrem stays at 0. I'm not sure what exactly is supposed to happen, so hopefully Rasmus or someone else can chime in. Thanks! steven ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net