INTERPVARS; 
INTERPVARS 
static sample_t *rs_plain(int v, int32 *countptr){  /* Play sample until end, then free the voice. */  INTERPVARS;  Voice     *vp=&voice[v];  sample_t     *dest=resample_buffer,    *src=vp->sample->data;  int32     ofs=vp->sample_offset,    incr=vp->sample_increment,    le=vp->sample->data_length,    count=*countptr;#ifdef PRECALC_LOOPS  int32 i;  if (incr<0) incr = -incr; /* In case we're coming out of a bidir loop */  /* Precalc how many times we should go through the loop.     NOTE: Assumes that incr > 0 and that ofs <= le */  i = (le - ofs) / incr + 1;  if (i > count)    {      i = count;      count = 0;    }   else count -= i;  while (i--)     {      RESAMPLATION;      ofs += incr;    }  if (ofs >= le)     {      FINALINTERP;      vp->status=VOICE_FREE;      ctl->note(v);      *countptr-=count+1;    }#else /* PRECALC_LOOPS */    while (count--)    {      RESAMPLATION;      ofs += incr;      if (ofs >= le)	{	  FINALINTERP;	  vp->status=VOICE_FREE; 	  ctl->note(v);	  *countptr-=count+1;	  break;	}    }#endif /* PRECALC_LOOPS */    vp->sample_offset=ofs; /* Update offset */  return resample_buffer;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/cb293c4705e0c7b93d3269c59bcf9bbcab7f6278/resample.c/buggy/resample.c