summaryrefslogtreecommitdiffstats
path: root/src/object/sp-lpe-item.cpp
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2018-03-28 17:27:59 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2018-03-28 19:59:41 +0000
commite9e25c0f83f2bd149a63a11b0516b647e4082ed6 (patch)
tree450744f48b048724792f12b634de78ee6f1a0d34 /src/object/sp-lpe-item.cpp
parenta bit more of warning cleanup (diff)
downloadinkscape-e9e25c0f83f2bd149a63a11b0516b647e4082ed6.tar.gz
inkscape-e9e25c0f83f2bd149a63a11b0516b647e4082ed6.zip
Fix bug: 1758477
Rotate Duplicate/ Mirror Symmetry added functionality feature request https://bugs.launchpad.net/inkscape/+bug/1758477
Diffstat (limited to 'src/object/sp-lpe-item.cpp')
-rw-r--r--src/object/sp-lpe-item.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/object/sp-lpe-item.cpp b/src/object/sp-lpe-item.cpp
index 17b2710f8..abe08a1dc 100644
--- a/src/object/sp-lpe-item.cpp
+++ b/src/object/sp-lpe-item.cpp
@@ -358,8 +358,14 @@ sp_lpe_item_create_original_path_recursive(SPLPEItem *lpeitem)
} else if (SPPath * path = dynamic_cast<SPPath *>(lpeitem)) {
Inkscape::XML::Node *pathrepr = path->getRepr();
if ( !pathrepr->attribute("inkscape:original-d") ) {
- pathrepr->setAttribute("inkscape:original-d", pathrepr->attribute("d"));
- path->setCurveBeforeLPE(path->getCurve());
+ if (gchar const * value = pathrepr->attribute("d")) {
+ Geom::PathVector pv = sp_svg_read_pathv(value);
+ pathrepr->setAttribute("inkscape:original-d", value);
+ SPCurve * original = new SPCurve();
+ original->set_pathvector(pv);
+ path->setCurveBeforeLPE(original);
+ original->unref();
+ }
}
} else if (SPShape * shape = dynamic_cast<SPShape *>(lpeitem)) {
if (SPCurve * c_lpe = shape->getCurveBeforeLPE()) {