diff options
Diffstat (limited to '')
-rw-r--r-- | src/decode.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/decode.c b/src/decode.c index eeaf74ba4..b7ded74da 100644 --- a/src/decode.c +++ b/src/decode.c @@ -462,6 +462,7 @@ void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb) { dc->state!=DECODE_STATE_STOP) { processDecodeInput(); + handleDecodeStart(); if(quit) return; my_usleep(10000); } @@ -561,10 +562,10 @@ void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * cb) { quit = 1; } pc->totalPlayTime+= sizeToTime*cb->chunkSize[cb->begin]; - cb->begin++; - if(cb->begin>=buffered_chunks) { + if( cb->begin+1 >= buffered_chunks ) { cb->begin = 0; } + else cb->begin++; } else if(next==cb->begin) { if(doCrossFade==1 && nextChunk>=0) { |