summaryrefslogtreecommitdiffstats
path: root/src/2geom/sbasis-to-bezier.cpp
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2007-12-23 19:34:02 +0000
committerjohanengelen <johanengelen@users.sourceforge.net>2007-12-23 19:34:02 +0000
commite730f9001a4b673c03fed92a26ebee39941fa675 (patch)
tree4d315144d70c608d3705fb6b99ad1b7253aeaeff /src/2geom/sbasis-to-bezier.cpp
parentfix critical bug #168588 assertion failed, file sp-conn-end.cpp: line 191 (diff)
downloadinkscape-e730f9001a4b673c03fed92a26ebee39941fa675.tar.gz
inkscape-e730f9001a4b673c03fed92a26ebee39941fa675.zip
update to latest 2geom (fixed 2 bugs :))
(bzr r4284)
Diffstat (limited to 'src/2geom/sbasis-to-bezier.cpp')
-rw-r--r--src/2geom/sbasis-to-bezier.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/2geom/sbasis-to-bezier.cpp b/src/2geom/sbasis-to-bezier.cpp
index 7283dd87d..415b30d89 100644
--- a/src/2geom/sbasis-to-bezier.cpp
+++ b/src/2geom/sbasis-to-bezier.cpp
@@ -212,15 +212,15 @@ path_from_piecewise(Geom::Piecewise<Geom::D2<Geom::SBasis> > const &B, double to
for(unsigned i = 0; ; i++) {
if(i+1 == B.size() || !are_near(B[i+1].at0(), B[i].at1(), tol)) {
//start of a new path
+ if(are_near(start, B[i].at1()) && sbasis_size(B[i]) <= 1) {
+ //last line seg already there
+ goto no_add;
+ }
+ build_from_sbasis(pb, B[i], tol);
if(are_near(start, B[i].at1())) {
//it's closed
pb.closePath();
- if(sbasis_size(B[i]) <= 1) {
- //last line seg already there
- goto no_add;
- }
}
- build_from_sbasis(pb, B[i], tol);
no_add:
if(i+1 >= B.size()) break;
start = B[i+1].at0();