From 3a8fd53dc88b13ebbbaa2360b66cf56ee079a2d1 Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Wed, 21 Dec 2016 21:39:44 +0200 Subject: [PATCH] Fix memory leak. --HG-- branch : develop --- src/libs/vtools/tools/vtooldetail.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libs/vtools/tools/vtooldetail.cpp b/src/libs/vtools/tools/vtooldetail.cpp index 1814548fa..fc2f971bd 100644 --- a/src/libs/vtools/tools/vtooldetail.cpp +++ b/src/libs/vtools/tools/vtooldetail.cpp @@ -1229,7 +1229,7 @@ void VToolDetail::RefreshGeometry() //--------------------------------------------------------------------------------------------------------------------- void VToolDetail::DeleteTool(bool ask) { - DeleteDetail *delDet = new DeleteDetail(doc, id, VAbstractTool::data.GetDetail(id)); + QScopedPointer delDet(new DeleteDetail(doc, id, VAbstractTool::data.GetDetail(id))); if (ask) { if (ConfirmDeletion() == QMessageBox::No) @@ -1237,9 +1237,9 @@ void VToolDetail::DeleteTool(bool ask) return; } /* If UnionDetails tool delete detail no need emit FullParsing.*/ - connect(delDet, &DeleteDetail::NeedFullParsing, doc, &VAbstractPattern::NeedFullParsing); + connect(delDet.data(), &DeleteDetail::NeedFullParsing, doc, &VAbstractPattern::NeedFullParsing); } - qApp->getUndoStack()->push(delDet); + qApp->getUndoStack()->push(delDet.take()); // Throw exception, this will help prevent case when we forget to immediately quit function. VExceptionToolWasDeleted e("Tool was used after deleting.");