diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-01-29 11:08:59 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-02-05 07:50:28 +0100 |
commit | add8b7099394e0754693af5a89d148ddc118182e (patch) | |
tree | 4f10e9aa2e51a05b4fb525f7b41ef2a37cd62d75 | |
parent | 76643b208c7f0c43b0603e08a3b37f29878c42ea (diff) |
loplugin:useuniqueptr in SvxRTFItemStackType
Change-Id: I1677915d91fb151997d4bef18473f33ab2f09648
Reviewed-on: https://gerrit.libreoffice.org/49173
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
-rw-r--r-- | editeng/source/rtf/svxrtf.cxx | 24 | ||||
-rw-r--r-- | include/editeng/svxrtf.hxx | 5 |
2 files changed, 13 insertions, 16 deletions
diff --git a/editeng/source/rtf/svxrtf.cxx b/editeng/source/rtf/svxrtf.cxx index 3e2b8da1fd6e..b9d6dd33a887 100644 --- a/editeng/source/rtf/svxrtf.cxx +++ b/editeng/source/rtf/svxrtf.cxx @@ -945,9 +945,9 @@ SvxRTFItemStackType::SvxRTFItemStackType( , m_pChildList( nullptr ) , nStyleNo( 0 ) { - pSttNd = rPos.MakeNodeIdx(); + pSttNd.reset( rPos.MakeNodeIdx() ); nSttCnt = rPos.GetCntIdx(); - pEndNd = pSttNd; + pEndNd = pSttNd.get(); nEndCnt = nSttCnt; } @@ -959,9 +959,9 @@ SvxRTFItemStackType::SvxRTFItemStackType( , m_pChildList( nullptr ) , nStyleNo( rCpy.nStyleNo ) { - pSttNd = rPos.MakeNodeIdx(); + pSttNd.reset( rPos.MakeNodeIdx() ); nSttCnt = rPos.GetCntIdx(); - pEndNd = pSttNd; + pEndNd = pSttNd.get(); nEndCnt = nSttCnt; aAttrSet.SetParent( &rCpy.aAttrSet ); @@ -971,26 +971,23 @@ SvxRTFItemStackType::SvxRTFItemStackType( SvxRTFItemStackType::~SvxRTFItemStackType() { - delete m_pChildList; - if( pSttNd != pEndNd ) + if( pSttNd.get() != pEndNd ) delete pEndNd; - delete pSttNd; } void SvxRTFItemStackType::Add(std::unique_ptr<SvxRTFItemStackType> pIns) { if (!m_pChildList) - m_pChildList = new SvxRTFItemStackList; + m_pChildList.reset( new SvxRTFItemStackList ); m_pChildList->push_back(std::move(pIns)); } void SvxRTFItemStackType::SetStartPos( const EditPosition& rPos ) { - if (pSttNd != pEndNd) + if (pSttNd.get() != pEndNd) delete pEndNd; - delete pSttNd; - pSttNd = rPos.MakeNodeIdx(); - pEndNd = pSttNd; + pSttNd.reset(rPos.MakeNodeIdx() ); + pEndNd = pSttNd.get(); nSttCnt = rPos.GetCntIdx(); } @@ -1074,8 +1071,7 @@ void SvxRTFItemStackType::Compress( const SvxRTFParser& rParser ) } if (m_pChildList->empty()) { - delete m_pChildList; - m_pChildList = nullptr; + m_pChildList.reset(); } } void SvxRTFItemStackType::SetRTFDefaults( const SfxItemSet& rDefaults ) diff --git a/include/editeng/svxrtf.hxx b/include/editeng/svxrtf.hxx index abba52d1c214..73e885553a43 100644 --- a/include/editeng/svxrtf.hxx +++ b/include/editeng/svxrtf.hxx @@ -312,9 +312,10 @@ class EDITENG_DLLPUBLIC SvxRTFItemStackType friend class SvxRTFParser; SfxItemSet aAttrSet; - EditNodeIdx *pSttNd, *pEndNd; + std::unique_ptr<EditNodeIdx> pSttNd; + EditNodeIdx *pEndNd; sal_Int32 nSttCnt, nEndCnt; - SvxRTFItemStackList* m_pChildList; + std::unique_ptr<SvxRTFItemStackList> m_pChildList; sal_uInt16 nStyleNo; SvxRTFItemStackType(SvxRTFItemStackType const&) = delete; |