From ce924d97aaea265b8f58265bedb49dbcd71fbc31 Mon Sep 17 00:00:00 2001 From: Takeshi Abe Date: Wed, 7 Oct 2015 23:21:00 +0900 Subject: [PATCH] starmath: Represent ownership by std::unique_ptr Change-Id: I7ce39cbdc0199d3508e7d16d1ce0b78f8d8ca620 Reviewed-on: https://gerrit.libreoffice.org/19230 Tested-by: Jenkins Reviewed-by: Noel Grandin --- starmath/inc/cursor.hxx | 6 ++---- starmath/source/cursor.cxx | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/starmath/inc/cursor.hxx b/starmath/inc/cursor.hxx index 964c65c40fa2..298882839b11 100644 --- a/starmath/inc/cursor.hxx +++ b/starmath/inc/cursor.hxx @@ -13,6 +13,7 @@ #include "caret.hxx" #include +#include /** Factor to multiple the squared horizontal distance with * Used for Up and Down movement. @@ -82,7 +83,6 @@ public: , mpPosition(nullptr) , mpTree(tree) , mpDocShell(pShell) - , mpGraph(nullptr) , mpClipboard(nullptr) , mnEditSections(0) , mbIsEnabledSetModifiedSmDocShell(false) @@ -94,8 +94,6 @@ public: ~SmCursor() { SetClipboard(); - delete mpGraph; - mpGraph = nullptr; } /** Get position */ @@ -230,7 +228,7 @@ private: /** Owner of the formula tree */ SmDocShell* mpDocShell; /** Graph over caret position in the current tree */ - SmCaretPosGraph* mpGraph; + std::unique_ptr mpGraph; /** Clipboard holder */ SmNodeList* mpClipboard; diff --git a/starmath/source/cursor.cxx b/starmath/source/cursor.cxx index 01c4b375fafa..954563ec88d0 100644 --- a/starmath/source/cursor.cxx +++ b/starmath/source/cursor.cxx @@ -114,14 +114,14 @@ void SmCursor::BuildGraph(){ _anchor = mpAnchor->CaretPos; if(mpPosition) _position = mpPosition->CaretPos; - delete mpGraph; + mpGraph.reset(); //Reset anchor and position as they point into an old graph mpAnchor = nullptr; mpPosition = nullptr; } //Build the new graph - mpGraph = SmCaretPosGraphBuildingVisitor(mpTree).takeGraph(); + mpGraph.reset(SmCaretPosGraphBuildingVisitor(mpTree).takeGraph()); //Restore anchor and position pointers if(_anchor.IsValid() || _position.IsValid()){