fix nasty bug in evaluation of final step of interpolated Curve values
authorPaul Davis <paul@linuxaudiosystems.com>
Mon, 3 Nov 2008 07:41:53 +0000 (07:41 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Mon, 3 Nov 2008 07:41:53 +0000 (07:41 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@4085 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/evoral/src/Curve.cpp

index c463022525cd95864fcb2476b677e2e527e043fb..a586edc70b02706a6c9ddc84c8080005149d5868 100644 (file)
@@ -309,7 +309,7 @@ Curve::_get_vector (double x0, double x1, float *vec, int32_t veclen)
 
        if (veclen > 1) {
 
-               dx = (hx - lx) / veclen;
+               dx = (hx - lx) / (veclen-1);
 
                for (i = 0; i < veclen; ++i, rx += dx) {
                        vec[i] = multipoint_eval (rx);