From 0228a4a5ca77f49a554b4a2f689ee76ff28dca6d Mon Sep 17 00:00:00 2001 From: Warren Dukes Date: Sat, 19 Jun 2004 16:27:48 +0000 Subject: uber minor tweaks git-svn-id: https://svn.musicpd.org/mpd/trunk@1563 09075e82-0dd4-0310-85a5-a0d7c8717e4f --- src/decode.c | 5 +++-- src/outputBuffer.c | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'src') 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) { diff --git a/src/outputBuffer.c b/src/outputBuffer.c index bde118ff8..3620f826b 100644 --- a/src/outputBuffer.c +++ b/src/outputBuffer.c @@ -57,10 +57,11 @@ void clearOutputBuffer(OutputBuffer * cb) { void flushOutputBuffer(OutputBuffer * cb) { if(currentChunk == cb->end) { - cb->end++; - if(cb->end>=buffered_chunks) { - cb->end = 0; + int next = cb->end+1; + if(next>=buffered_chunks) { + next = 0; } + cb->end = next; currentChunk = -1; } } -- cgit v1.2.3