summaryrefslogtreecommitdiffstats
path: root/src/object/sp-lpe-item.cpp
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2018-09-30 16:39:55 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2018-09-30 16:39:55 +0000
commit0aba95762aa449668b044a894536ecb0a92b0316 (patch)
treeb43c7a6746cbb969901610b60c3f09d469a6fcbb /src/object/sp-lpe-item.cpp
parentfix 1787601 star stroke width scaled by 3.78 (diff)
downloadinkscape-0aba95762aa449668b044a894536ecb0a92b0316.tar.gz
inkscape-0aba95762aa449668b044a894536ecb0a92b0316.zip
Fix for bug:#1299461; Some LPE fails on apply to original, but cloned elements
Diffstat (limited to 'src/object/sp-lpe-item.cpp')
-rwxr-xr-xsrc/object/sp-lpe-item.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/object/sp-lpe-item.cpp b/src/object/sp-lpe-item.cpp
index fef2a299b..d543c5c4c 100755
--- a/src/object/sp-lpe-item.cpp
+++ b/src/object/sp-lpe-item.cpp
@@ -552,13 +552,11 @@ void SPLPEItem::addPathEffect(std::string value, bool reset)
hreflist.push_back(value); // C++11: should be emplace_back std::move'd (also the reason why passed by value to addPathEffect)
this->getRepr()->setAttribute("inkscape:path-effect", hreflist_svg_string(hreflist));
-
// Make sure that ellipse is stored as <svg:path>
if( SP_IS_GENERICELLIPSE(this)) {
SP_GENERICELLIPSE(this)->write( this->getRepr()->document(), this->getRepr(), SP_OBJECT_WRITE_EXT );
}
- // make sure there is an original-d for paths!!!
- sp_lpe_item_create_original_path_recursive(this);
+
LivePathEffectObject *lpeobj = this->path_effect_list->back()->lpeobject;
if (lpeobj && lpeobj->get_lpe()) {
@@ -568,7 +566,10 @@ void SPLPEItem::addPathEffect(std::string value, bool reset)
// has to be called when all the subitems have their lpes applied
lpe->resetDefaults(this);
}
-
+ // Moved here to fix #1299461, we can call previious function twice after
+ // if anyone find necesary
+ // make sure there is an original-d for paths!!!
+ sp_lpe_item_create_original_path_recursive(this);
// perform this once when the effect is applied
lpe->doOnApply_impl(this);