diff --git a/Alc/dsound.c b/Alc/dsound.c index 38410861..899a0936 100644 --- a/Alc/dsound.c +++ b/Alc/dsound.c @@ -82,7 +82,7 @@ static ALuint DSoundProc(ALvoid *ptr) IDirectSoundBuffer_GetCurrentPosition(pData->DSsbuffer, &PlayCursor, NULL); avail = (PlayCursor-LastCursor+BufferSize) % BufferSize; - if(avail == 0) + if(avail < BufferSize/num_frags) { Sleep(1); continue;