# HG changeset patch # User vitor # Date 1211647128 0 # Node ID 128af7cac0457138eb49c402d55b15d32a1cbb09 # Parent d4c8338a09a8dbac240a4a1a164e92a95a23fa49 Use an intermediate variable for overflow testing diff -r d4c8338a09a8 -r 128af7cac045 ra144.c --- a/ra144.c Sat May 24 16:20:37 2008 +0000 +++ b/ra144.c Sat May 24 16:38:48 2008 +0000 @@ -154,19 +154,22 @@ for (i=0; i>= 12; - if (ptr[10] - sum < -32768 || ptr[10] - sum > 32767) { + new_val = ptr[10] - sum; + + if (new_val < -32768 || new_val > 32767) { memset(out, 0, len * 2); memset(statbuf, 0, 20); return; } - ptr[10] -= sum; + ptr[10] = new_val; ptr++; }