diff --git a/src/engine/brrUtils.c b/src/engine/brrUtils.c index 761b3b0d..cbc9d6c3 100644 --- a/src/engine/brrUtils.c +++ b/src/engine/brrUtils.c @@ -58,7 +58,7 @@ long brrEncode(short* buf, unsigned char* out, long len, long loopStart) { for (int j=0; j<16; j++) { short s=buf[j]; if (s<0) s=-s; - while (range<11 && s>((8<((8<len)?1:0); switch (filter) { @@ -67,6 +67,7 @@ long brrEncode(short* buf, unsigned char* out, long len, long loopStart) { o0=buf[j]>>range; if (o0>7) o0=7; if (o0<-8) o0=-8; + if (range>=12) if (o0<-7) o0=-7; o=o0&15; if (j&1) { next[1+(j>>1)]|=o;