diff options
| author | Gellule Xg <gellule.xg@gmail.com> | 2012-01-13 18:55:51 +0000 |
|---|---|---|
| committer | Gellule Xg <gellule.xg@gmail.com> | 2012-01-13 18:55:51 +0000 |
| commit | bd81940434e5de391ffe9c719b5d2fed7afecd77 (patch) | |
| tree | 32d895afeaf23cd5c62f2ee63daefd1ac57cf4f6 /src | |
| parent | Adding expression calculator in Clone Tiler (see Bug #773636). Patch by Romain. (diff) | |
| download | inkscape-bd81940434e5de391ffe9c719b5d2fed7afecd77.tar.gz inkscape-bd81940434e5de391ffe9c719b5d2fed7afecd77.zip | |
2geom: Fixed an infinite loop where 2geom was trying to find the roots of an identically zero bezier.
Fixed bugs:
- https://launchpad.net/bugs/916171
(bzr r10880)
Diffstat (limited to 'src')
| -rw-r--r-- | src/2geom/solve-bezier.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/2geom/solve-bezier.cpp b/src/2geom/solve-bezier.cpp index b7c01b1f7..0a9f0e310 100644 --- a/src/2geom/solve-bezier.cpp +++ b/src/2geom/solve-bezier.cpp @@ -142,6 +142,10 @@ Bezier::find_bezier_roots(std::vector<double> &solutions, //convex_hull_marching(bz, bz, solutions, left_t, right_t); //return; + //A constant bezier, even if identically zero, has no roots + if (bz.isConstant()) + return; + while(bz[0] == 0) { debug(std::cout << "deflate\n"); bz = bz.deflate(); |
