Fix a possible segfault.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Fri, 28 Apr 2006 11:47:35 +0000 (11:47 +0000)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Fri, 28 Apr 2006 11:47:35 +0000 (11:47 +0000)
Makefile
pitch.cpp

index b7cc597..5cbb2cc 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-CXXFLAGS=-O2 -Wall
+CXXFLAGS=-g -Wall
 CPPFLAGS=
 
 all: pitch
index 1c272f1..97238f5 100644 (file)
--- a/pitch.cpp
+++ b/pitch.cpp
@@ -234,6 +234,9 @@ std::pair<double, double> find_peak(double *in, unsigned num_samples)
                }
        }
 
+       if (best_bin == 0 || best_bin == num_samples / 2) {
+               return std::make_pair(-1.0, 0.0);
+       }
        std::pair<double, double> peak = 
                interpolate_peak(in[best_bin - 1],
                                 in[best_bin],