From d12c7ec090d8f205debb9d7cfda58c1359340609 Mon Sep 17 00:00:00 2001 From: Mike Brady Date: Sat, 16 Jul 2016 14:24:34 +0100 Subject: [PATCH] Fix a bug just introduced into the basic stuffing function. --- player.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/player.c b/player.c index bcf84118..97eccfb2 100644 --- a/player.c +++ b/player.c @@ -890,7 +890,11 @@ static int stuff_buffer_basic(short *inptr, int length, short *outptr, int stuff } // if you're removing, i.e. stuff < 0, copy that much less over. If you're adding, do all the rest. - for (i = stuffsamp; i < (stuff>0) ? length : length+stuff; i++) { + int remainder = length; + if (stuff<0) + remainder = remainder+stuff; // don't run over the correct end of the output buffer + + for (i = stuffsamp; i < remainder; i++) { *outptr++ = dithered_vol(*inptr++); *outptr++ = dithered_vol(*inptr++); } -- 2.47.2