summaryrefslogtreecommitdiffstats
path: root/src/ui/tool
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2018-03-08 23:50:57 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2018-03-26 17:48:34 +0000
commit6e5d89bf9595648fcebcf76fd031ba1ea022d397 (patch)
treea7eb90d21021e843a63c286427a533a4402877d7 /src/ui/tool
parentFix maren problem in https://gitlab.com/inkscape/inkscape/merge_requests/212#... (diff)
downloadinkscape-6e5d89bf9595648fcebcf76fd031ba1ea022d397.tar.gz
inkscape-6e5d89bf9595648fcebcf76fd031ba1ea022d397.zip
Fixing refs
Diffstat (limited to 'src/ui/tool')
-rw-r--r--src/ui/tool/path-manipulator.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/ui/tool/path-manipulator.cpp b/src/ui/tool/path-manipulator.cpp
index dcf0a4d4b..67d914095 100644
--- a/src/ui/tool/path-manipulator.cpp
+++ b/src/ui/tool/path-manipulator.cpp
@@ -190,8 +190,7 @@ void PathManipulator::writeXML()
{
if (!_live_outline)
_updateOutline();
- if (_live_objects)
- _setGeometry();
+ _setGeometry();
if (!_path) return;
_observer->block();
@@ -201,9 +200,7 @@ void PathManipulator::writeXML()
} else {
// this manipulator will have to be destroyed right after this call
_getXMLNode()->removeObserver(*_observer);
- sp_object_ref(_path);
_path->deleteObject(true, true);
- sp_object_unref(_path);
_path = NULL;
}
_observer->unblock();
@@ -1393,8 +1390,7 @@ void PathManipulator::_createGeometryFromControlPoints(bool alert_LPE)
}
if (_live_outline)
_updateOutline();
- if (_live_objects)
- _setGeometry();
+ _setGeometry();
}
/** Build one segment of the geometric representation.
@@ -1515,8 +1511,8 @@ void PathManipulator::_setGeometry()
if (empty()) return;
if (SPCurve * original = _path->getCurveBeforeLPE()){
if(!_spcurve->is_equal(original)) {
- _path->setCurveBeforeLPE(_spcurve);
- delete original;
+ _path->setCurveBeforeLPE(_spcurve, false, false);
+ original->unref();
}
} else if(!_spcurve->is_equal(_path->getCurve(true))) {
_path->setCurve(_spcurve, false);