From b7b57ef207bcba9bd3c59a42aea2a0b2eb4b8e94 Mon Sep 17 00:00:00 2001 From: Josh Coalson Date: Thu, 9 Nov 2006 07:06:33 +0000 Subject: [PATCH] fix bug in verify_write_callback_ where the FIFO dequeueing did not memmove all the data --- src/libFLAC/stream_encoder.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/libFLAC/stream_encoder.c b/src/libFLAC/stream_encoder.c index 5b7f3374..06539c40 100644 --- a/src/libFLAC/stream_encoder.c +++ b/src/libFLAC/stream_encoder.c @@ -4442,10 +4442,9 @@ FLAC__StreamDecoderWriteStatus verify_write_callback_(const FLAC__StreamDecoder } } /* dequeue the frame from the fifo */ - for(channel = 0; channel < channels; channel++) { - memmove(&encoder->private_->verify.input_fifo.data[channel][0], &encoder->private_->verify.input_fifo.data[channel][blocksize], encoder->private_->verify.input_fifo.tail - blocksize); - } encoder->private_->verify.input_fifo.tail -= blocksize; + for(channel = 0; channel < channels; channel++) + memmove(&encoder->private_->verify.input_fifo.data[channel][0], &encoder->private_->verify.input_fifo.data[channel][blocksize], encoder->private_->verify.input_fifo.tail * sizeof(encoder->private_->verify.input_fifo.data[0][0])); return FLAC__STREAM_DECODER_WRITE_STATUS_CONTINUE; }