loplugin:useuniqueptr in DeleteOnDeinit
Change-Id: If7428654a2577ba67aea57904d2a2b5099c4d602 Reviewed-on: https://gerrit.libreoffice.org/58568 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
This commit is contained in:
parent
fc79121c95
commit
2855fa6eef
3 changed files with 9 additions and 7 deletions
|
@ -224,17 +224,17 @@ namespace vcl
|
|||
template < typename T >
|
||||
class DeleteOnDeinit : public DeleteOnDeinitBase
|
||||
{
|
||||
T* m_pT;
|
||||
virtual void doCleanup() override { delete m_pT; m_pT = nullptr; }
|
||||
std::unique_ptr<T> m_pT;
|
||||
virtual void doCleanup() override { m_pT.reset(); }
|
||||
public:
|
||||
DeleteOnDeinit( T* i_pT ) : m_pT( i_pT ) { addDeinitContainer( this ); }
|
||||
|
||||
// get contents
|
||||
T* get() { return m_pT; }
|
||||
T* get() { return m_pT.get(); }
|
||||
|
||||
// set contents, returning old contents
|
||||
// ownership is transferred !
|
||||
T* set( T* i_pNew ) { T* pOld = m_pT; m_pT = i_pNew; return pOld; }
|
||||
std::unique_ptr<T> set( std::unique_ptr<T> i_pNew ) { auto pOld = std::move(m_pT); m_pT = std::move(i_pNew); return pOld; }
|
||||
};
|
||||
|
||||
/** Similar to DeleteOnDeinit, the DeleteUnoReferenceOnDeinit
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#include <sddll.hxx>
|
||||
|
||||
#include <o3tl/make_unique.hxx>
|
||||
#include <sfx2/viewfrm.hxx>
|
||||
#include <sfx2/bindings.hxx>
|
||||
#include <sfx2/app.hxx>
|
||||
|
@ -94,8 +95,8 @@ static BitmapEx* getButtonImage( int index, bool large )
|
|||
{
|
||||
for (sal_uInt16 i = 0; i < SAL_N_ELEMENTS(aSmallPlaceHolders); i++ )
|
||||
{
|
||||
gSmallButtonImages[i].set(new BitmapEx(aSmallPlaceHolders[i]));
|
||||
gLargeButtonImages[i].set(new BitmapEx(aBigPlaceHolders[i]));
|
||||
gSmallButtonImages[i].set(o3tl::make_unique<BitmapEx>(aSmallPlaceHolders[i]));
|
||||
gLargeButtonImages[i].set(o3tl::make_unique<BitmapEx>(aBigPlaceHolders[i]));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#include <sdr/primitive2d/sdrprimitivetools.hxx>
|
||||
#include <osl/mutex.hxx>
|
||||
#include <o3tl/make_unique.hxx>
|
||||
#include <vcl/lazydelete.hxx>
|
||||
#include <vcl/BitmapTools.hxx>
|
||||
|
||||
|
@ -56,7 +57,7 @@ namespace drawinglayer
|
|||
BitmapEx aBitmap = vcl::bitmap::CreateFromData(cross, 3, 3, 12, 32);
|
||||
|
||||
// create and exchange at aRetVal
|
||||
delete aRetVal.set(new BitmapEx(aBitmap));
|
||||
aRetVal.set(o3tl::make_unique<BitmapEx>(aBitmap));
|
||||
}
|
||||
|
||||
return aRetVal.get() ? *aRetVal.get() : BitmapEx();
|
||||
|
|
Loading…
Reference in a new issue