summaryrefslogtreecommitdiffstats
path: root/src/object/sp-star.cpp
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2018-09-29 17:38:18 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2018-09-29 17:38:18 +0000
commitb5b69ed38101efb51632b9c7ad4a25a5b13ca98c (patch)
treed9abc106c62b06bdf5fd422317b08b3288475b0b /src/object/sp-star.cpp
parentCI/AppVeyor: Escape from DLL hell (diff)
downloadinkscape-b5b69ed38101efb51632b9c7ad4a25a5b13ca98c.tar.gz
inkscape-b5b69ed38101efb51632b9c7ad4a25a5b13ca98c.zip
Fix for bug: #1791784 LPE path effect undo does not work
Diffstat (limited to 'src/object/sp-star.cpp')
-rw-r--r--src/object/sp-star.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/object/sp-star.cpp b/src/object/sp-star.cpp
index fda39f4af..40d38d4a8 100644
--- a/src/object/sp-star.cpp
+++ b/src/object/sp-star.cpp
@@ -432,12 +432,16 @@ void SPStar::set_shape() {
/* Reset the shape's curve to the "original_curve"
* This is very important for LPEs to work properly! (the bbox might be recalculated depending on the curve in shape)*/
SPCurve * before = this->getCurveBeforeLPE();
- if (before || this->hasPathEffectRecursive()) {
+ bool haslpe = this->hasPathEffectOnClipOrMaskRecursive(this);
+ if (before || haslpe) {
if (c && before && before->get_pathvector() != c->get_pathvector()){
this->setCurveBeforeLPE(c);
sp_lpe_item_update_patheffect(this, true, false);
- } else {
+ } else if(haslpe) {
this->setCurveBeforeLPE(c);
+ } else {
+ //This happends on undo, fix bug:#1791784
+ this->setCurveInsync(c);
}
} else {
this->setCurveInsync(c);