shithub: aubio

Download patch

ref: e7e11bfb5b9dde59d259eca1438a807277655a0c
parent: 9d6001cb8ac52f1245a05964dc50443a20ab1158
author: Paul Brossier <piem@piem.org>
date: Tue Jul 10 11:28:39 EDT 2012

src/pitch/pitchschmitt.c: avoid out of bound reads

--- a/src/pitch/pitchschmitt.c
+++ b/src/pitch/pitchschmitt.c
@@ -84,9 +84,9 @@
       t1 = (sint_t) (A1 * trigfact + 0.5);
       t2 = -(sint_t) (A2 * trigfact + 0.5);
       startpoint = 0;
-      for (j = 1; schmittBuffer[j] <= t1 && j < blockSize; j++);
-      for (; !(schmittBuffer[j] >= t2 &&
-              schmittBuffer[j + 1] < t2) && j < blockSize; j++);
+      for (j = 1; j < blockSize && schmittBuffer[j] <= t1; j++);
+      for (     ; j < blockSize - 1 && !(schmittBuffer[j] >= t2 &&
+             schmittBuffer[j + 1] < t2); j++);
       startpoint = j;
       schmittTriggered = 0;
       endpoint = startpoint + 1;