sw/source/core/doc/swstylemanager.cxx | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-)
New commits: commit 3a09f1a04c6e60eb299fd1ac4b91ff6a67d12daf Author: Noel Grandin <noel.gran...@collabora.co.uk> Date: Tue Apr 3 11:45:07 2018 +0200 loplugin:useuniqueptr in SwStyleManager Change-Id: I4eb1e4f5e0f7a94b4512678f1513b2add9c2d936 Reviewed-on: https://gerrit.libreoffice.org/52301 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/sw/source/core/doc/swstylemanager.cxx b/sw/source/core/doc/swstylemanager.cxx index 77cd65a17165..e6bbab2822a8 100644 --- a/sw/source/core/doc/swstylemanager.cxx +++ b/sw/source/core/doc/swstylemanager.cxx @@ -57,18 +57,15 @@ class SwStyleManager : public IStyleAccess { StylePool aAutoCharPool; StylePool aAutoParaPool; - SwStyleCache *mpCharCache; - SwStyleCache *mpParaCache; + std::unique_ptr<SwStyleCache> mpCharCache; + std::unique_ptr<SwStyleCache> mpParaCache; public: // accept empty item set for ignorable paragraph items. explicit SwStyleManager( SfxItemSet const * pIgnorableParagraphItems ) : aAutoCharPool(), - aAutoParaPool( pIgnorableParagraphItems ), - mpCharCache(nullptr), - mpParaCache(nullptr) + aAutoParaPool( pIgnorableParagraphItems ) {} - virtual ~SwStyleManager() override; virtual std::shared_ptr<SfxItemSet> getAutomaticStyle( const SfxItemSet& rSet, IStyleAccess::SwAutoStyleFamily eFamily ) override; virtual std::shared_ptr<SfxItemSet> getByName( const OUString& rName, @@ -85,18 +82,10 @@ IStyleAccess *createStyleManager( SfxItemSet const * pIgnorableParagraphItems ) return new SwStyleManager( pIgnorableParagraphItems ); } -SwStyleManager::~SwStyleManager() -{ - delete mpCharCache; - delete mpParaCache; -} - void SwStyleManager::clearCaches() { - delete mpCharCache; - mpCharCache = nullptr; - delete mpParaCache; - mpParaCache = nullptr; + mpCharCache.reset(); + mpParaCache.reset(); } std::shared_ptr<SfxItemSet> SwStyleManager::getAutomaticStyle( const SfxItemSet& rSet, @@ -114,13 +103,13 @@ std::shared_ptr<SfxItemSet> SwStyleManager::cacheAutomaticStyle( const SfxItemSe if (eFamily == IStyleAccess::AUTO_STYLE_CHAR) { if (!mpCharCache) - mpCharCache = new SwStyleCache(); + mpCharCache.reset(new SwStyleCache()); mpCharCache->addStyleName( pStyle ); } else { if (!mpParaCache) - mpParaCache = new SwStyleCache(); + mpParaCache.reset(new SwStyleCache()); mpParaCache->addStyleName( pStyle ); } return pStyle; @@ -130,9 +119,9 @@ std::shared_ptr<SfxItemSet> SwStyleManager::getByName( const OUString& rName, IStyleAccess::SwAutoStyleFamily eFamily ) { StylePool& rAutoPool = eFamily == IStyleAccess::AUTO_STYLE_CHAR ? aAutoCharPool : aAutoParaPool; - SwStyleCache* &rpCache = eFamily == IStyleAccess::AUTO_STYLE_CHAR ? mpCharCache : mpParaCache; + std::unique_ptr<SwStyleCache> &rpCache = eFamily == IStyleAccess::AUTO_STYLE_CHAR ? mpCharCache : mpParaCache; if( !rpCache ) - rpCache = new SwStyleCache(); + rpCache.reset(new SwStyleCache()); std::shared_ptr<SfxItemSet> pStyle = rpCache->getByName( rName ); if( !pStyle.get() ) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits