diff --git a/libs/evoral/src/Curve.cpp b/libs/evoral/src/Curve.cpp index dae23dc591..bf08f509f3 100644 --- a/libs/evoral/src/Curve.cpp +++ b/libs/evoral/src/Curve.cpp @@ -195,6 +195,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) int32_t original_veclen; int32_t npoints; + cerr << "Check1: veclen = " << veclen << endl; + if ((npoints = _list.events().size()) == 0) { for (i = 0; i < veclen; ++i) { vec[i] = _list.default_value(); @@ -202,6 +204,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) return; } + cerr << "Check2: veclen = " << veclen << endl; + /* events is now known not to be empty */ max_x = _list.events().back()->when; @@ -217,6 +221,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) original_veclen = veclen; + cerr << "Check3: veclen = " << veclen << endl; + if (x0 < min_x) { /* fill some beginning section of the array with the @@ -236,6 +242,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) vec += subveclen; } + cerr << "Check4: veclen = " << veclen << endl; + if (veclen && x1 > max_x) { /* fill some end section of the array with the default or final value */ @@ -259,6 +267,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) veclen -= subveclen; } + cerr << "Check5: veclen = " << veclen << endl; + if (veclen == 0) { return; } @@ -271,6 +281,7 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) return; } + cerr << "Check6: veclen = " << veclen << endl; if (npoints == 2) { @@ -307,10 +318,14 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) return; } + cerr << "Check7: veclen = " << veclen << endl; + if (_dirty) { solve (); } + cerr << "Check8: veclen = " << veclen << endl; + rx = lx; double dx = 0; @@ -318,6 +333,8 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen) dx = (hx - lx) / (veclen - 1); } + cerr << "Check9: veclen = " << veclen << endl; + for (i = 0; i < veclen; ++i, rx += dx) { vec[i] = multipoint_eval (rx); }