Fix 1672033: when deciding which curve we are closest to, ignore the very ends of...
[synfig.git] / ETL / trunk / ETL / _bezier.h
index 7e26796..0e3ace9 100644 (file)
@@ -551,7 +551,8 @@ public:
                                bezier<V,T>::operator[](1),
                                bezier<V,T>::operator[](2),
                                bezier<V,T>::operator[](3)};
-                       return NearestPointOnCurve(x, array);
+                       float t = NearestPointOnCurve(x, array);
+                       return t > 0.999999 ? 0.999999 : t < 0.000001 ? 0.000001 : t;
            }
            else
            {