Merge "Tremolo: Fix integer overflows in codebook.c" am: 7477bbdc0f

Original change: https://android-review.googlesource.com/c/platform/external/tremolo/+/1652222

Change-Id: I69c1e38c7d9d06593adb6131a891b23858d48d88
diff --git a/Tremolo/codebook.c b/Tremolo/codebook.c
index 84721e7..5db6b60 100644
--- a/Tremolo/codebook.c
+++ b/Tremolo/codebook.c
@@ -873,8 +873,11 @@
     if (!v) return -1;
     for(i=0;i<n;){
       if(decode_map(book,b,v,point))return -1;
-      for (j=0;j<book->dim && i < n;j++)
-        a[i++]+=v[j];
+      for (j=0;j<book->dim && i < n;j++,i++){
+        if (__builtin_add_overflow(a[i], v[j], &a[i])) {
+           a[i] = v[j] > 0 ? INT32_MAX : INT32_MIN;
+        }
+      }
     }
   }
   return 0;