Sketcher: fix intermittent crash on sketch exit

This commit is contained in:
Vassily Checkin
2026-01-24 11:36:40 -05:00
committed by Chris Hennes
parent 9eed3a8d77
commit d3d6459484
2 changed files with 5 additions and 5 deletions

View File

@@ -3572,9 +3572,9 @@ bool ViewProviderSketch::setEdit(int ModNum)
viewProviderParameters.recalculateInitialSolutionWhileDragging);
// intercept del key press from main app
listener = new ShortcutListener(this);
listener = std::make_unique<ShortcutListener>(this);
Gui::getMainWindow()->installEventFilter(listener);
Gui::getMainWindow()->installEventFilter(listener.get());
Workbench::enterEditMode();
@@ -3729,8 +3729,8 @@ void ViewProviderSketch::unsetEdit(int ModNum)
Workbench::leaveEditMode();
if (listener) {
Gui::getMainWindow()->removeEventFilter(listener);
delete listener;
Gui::getMainWindow()->removeEventFilter(listener.get());
listener.reset();
}
if (isInEditMode()) {

View File

@@ -993,7 +993,7 @@ private:
Gui::CoinPtr<SoSketchFaces> pcSketchFaces;
Gui::CoinPtr<SoToggleSwitch> pcSketchFacesToggle;
ShortcutListener* listener;
std::unique_ptr<ShortcutListener> listener;
std::unique_ptr<EditModeCoinManager> editCoinManager;