!(voice[i].sample->note_to_use && ISDRUMCHANNEL(voice[i].channel))) 
!(voice[i].sample && voice[i].sample->note_to_use && ISDRUMCHANNEL(voice[i].channel))) 
static int find_free_voice(void){    int i, nv = voices, lowest;    int32 lv, v;    for(i = 0; i < nv; i++)	if(voice[i].status == VOICE_FREE)	{	    if(upper_voices <= i)		upper_voices = i + 1;	    return i;	}    upper_voices = voices;    /* Look for the decaying note with the lowest volume */    lv = 0x7FFFFFFF;    lowest = -1;    for(i = 0; i < nv; i++)    {	if(voice[i].status & ~(VOICE_ON | VOICE_DIE) &&	   !(voice[i].sample->note_to_use && ISDRUMCHANNEL(voice[i].channel)))	{	    v = voice[i].left_mix;	    if((voice[i].panned==PANNED_MYSTERY) && (voice[i].right_mix>v))		v = voice[i].right_mix;	    if(v<lv)	    {		lv = v;		lowest = i;	    }	}    }    if(lowest != -1 && !prescanning_flag)    {	free_voice(lowest);	ctl_note_event(lowest);    }    return lowest;}
4357	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4357/a06480a7c58fbc8239169c732756804b6c47f134/playmidi.c/buggy/timidity/playmidi.c