diff --git a/src/Editor/Undo/CPasteNodesCommand.cpp b/src/Editor/Undo/CPasteNodesCommand.cpp index 03e4a858..de1d0076 100644 --- a/src/Editor/Undo/CPasteNodesCommand.cpp +++ b/src/Editor/Undo/CPasteNodesCommand.cpp @@ -10,15 +10,10 @@ CPasteNodesCommand::CPasteNodesCommand(CWorldEditor *pEditor, CScriptLayer *pLay const CNodeCopyMimeData *pkMimeData = qobject_cast(qApp->clipboard()->mimeData()); if (pkMimeData) - mpMimeData = new CNodeCopyMimeData(*pkMimeData); - else - mpMimeData = nullptr; + mpMimeData = std::make_unique(*pkMimeData); } -CPasteNodesCommand::~CPasteNodesCommand() -{ - if (mpMimeData) delete mpMimeData; -} +CPasteNodesCommand::~CPasteNodesCommand() = default; void CPasteNodesCommand::undo() { diff --git a/src/Editor/Undo/CPasteNodesCommand.h b/src/Editor/Undo/CPasteNodesCommand.h index 218e231f..74339eb5 100644 --- a/src/Editor/Undo/CPasteNodesCommand.h +++ b/src/Editor/Undo/CPasteNodesCommand.h @@ -6,13 +6,14 @@ #include "Editor/CNodeCopyMimeData.h" #include "Editor/WorldEditor/CWorldEditor.h" #include +#include class CPasteNodesCommand : public IUndoCommand { CWorldEditor *mpEditor; CScriptLayer *mpLayer; CVector3f mPastePoint; - CNodeCopyMimeData *mpMimeData; + std::unique_ptr mpMimeData; CNodePtrList mPastedNodes; CNodePtrList mOriginalSelection; CInstancePtrList mLinkedInstances;