diff --git a/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp b/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp index cafcee769f..3e4ea3e6c6 100644 --- a/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp +++ b/src/Mod/Sketcher/Gui/CommandSketcherBSpline.cpp @@ -76,11 +76,12 @@ bool isSketcherBSplineActive(Gui::Document *doc, bool actsOnSelection) void ActivateBSplineHandler(Gui::Document *doc,DrawSketchHandler *handler) { + std::unique_ptr ptr(handler); if (doc) { if (doc->getInEdit() && doc->getInEdit()->isDerivedFrom(SketcherGui::ViewProviderSketch::getClassTypeId())) { SketcherGui::ViewProviderSketch* vp = static_cast (doc->getInEdit()); vp->purgeHandler(); - vp->activateHandler(handler); + vp->activateHandler(ptr.release()); } } }