From e4b5aaade285ecad39332ad8b195738feb51151a Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Fri, 28 May 2021 12:19:09 +0200 Subject: no need to allocate this hint on the heap Change-Id: I6321d03cb5786aa0c17705cc8c8bcf1f85326f44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116369 Tested-by: Jenkins Reviewed-by: Noel Grandin --- sw/source/core/attr/calbck.cxx | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'sw/source/core/attr/calbck.cxx') diff --git a/sw/source/core/attr/calbck.cxx b/sw/source/core/attr/calbck.cxx index a37ee5bef376..3f4253cd2566 100644 --- a/sw/source/core/attr/calbck.cxx +++ b/sw/source/core/attr/calbck.cxx @@ -54,7 +54,6 @@ namespace sw } sw::LegacyModifyHint::~LegacyModifyHint() {} -sw::ModifyChangedHint::~ModifyChangedHint() {} SwClient::SwClient(SwClient&& o) noexcept : m_pRegisteredIn(nullptr) @@ -75,19 +74,19 @@ SwClient::~SwClient() m_pRegisteredIn->Remove( this ); } -std::unique_ptr SwClient::CheckRegistration( const SfxPoolItem* pOld ) +std::optional SwClient::CheckRegistration( const SfxPoolItem* pOld ) { DBG_TESTSOLARMUTEX(); // this method only handles notification about dying SwModify objects if( !pOld || pOld->Which() != RES_OBJECTDYING ) - return nullptr; + return {}; assert(dynamic_cast(pOld)); const SwPtrMsgPoolItem* pDead = static_cast(pOld); if(pDead->pObject != m_pRegisteredIn) { // we should only care received death notes from objects we are following - return nullptr; + return {}; } // I've got a notification from the object I know SwModify* pAbove = m_pRegisteredIn->GetRegisteredIn(); @@ -102,7 +101,7 @@ std::unique_ptr SwClient::CheckRegistration( const SfxPoo // destroy connection EndListeningAll(); } - return std::unique_ptr(new sw::ModifyChangedHint(pAbove)); + return sw::ModifyChangedHint(pAbove); } void SwClient::CheckRegistrationFormat(SwFormat& rOld) -- cgit v1.2.3