comphelper/source/misc/instancelocker.cxx | 14 ++++---------- comphelper/source/misc/instancelocker.hxx | 4 ++-- 2 files changed, 6 insertions(+), 12 deletions(-)
New commits: commit ee2bd1ee97194f4d39d4d6ab95c9b926b5077cb8 Author: Noel Grandin <[email protected]> Date: Mon Jan 16 10:36:39 2017 +0200 use rtl::Reference in OInstanceLocker no need to store a raw pointer and a refcount pointer Change-Id: I2dc3b87dd870c8d8128c2249a18fda30319ba08c Reviewed-on: https://gerrit.libreoffice.org/33157 Tested-by: Jenkins <[email protected]> Reviewed-by: Noel Grandin <[email protected]> diff --git a/comphelper/source/misc/instancelocker.cxx b/comphelper/source/misc/instancelocker.cxx index 11bc0e1..e6a39e8 100644 --- a/comphelper/source/misc/instancelocker.cxx +++ b/comphelper/source/misc/instancelocker.cxx @@ -38,8 +38,7 @@ using namespace ::com::sun::star; OInstanceLocker::OInstanceLocker() -: m_pLockListener( nullptr ) -, m_pListenersContainer( nullptr ) +: m_pListenersContainer( nullptr ) , m_bDisposed( false ) , m_bInitialized( false ) { @@ -81,11 +80,7 @@ void SAL_CALL OInstanceLocker::dispose() if ( m_xLockListener.is() ) { - if ( m_pLockListener ) - { - m_pLockListener->Dispose(); - m_pLockListener = nullptr; - } + m_xLockListener->Dispose(); m_xLockListener.clear(); } @@ -169,12 +164,11 @@ void SAL_CALL OInstanceLocker::initialize( const uno::Sequence< uno::Any >& aArg uno::Reference< uno::XInterface >(), 0 ); - m_pLockListener = new OLockListener( uno::Reference< lang::XComponent > ( static_cast< lang::XComponent* >( this ) ), + m_xLockListener = new OLockListener( uno::Reference< lang::XComponent > ( static_cast< lang::XComponent* >( this ) ), xInstance, nModes, xApproval ); - m_xLockListener.set( static_cast< OWeakObject* >( m_pLockListener ) ); - m_pLockListener->Init(); + m_xLockListener->Init(); } catch( uno::Exception& ) { diff --git a/comphelper/source/misc/instancelocker.hxx b/comphelper/source/misc/instancelocker.hxx index 6960e1d..df6c39c 100644 --- a/comphelper/source/misc/instancelocker.hxx +++ b/comphelper/source/misc/instancelocker.hxx @@ -32,6 +32,7 @@ #include <osl/mutex.hxx> #include <cppuhelper/implbase.hxx> #include <comphelper/interfacecontainer2.hxx> +#include <rtl/ref.hxx> class OLockListener; @@ -44,8 +45,7 @@ class OInstanceLocker : public ::cppu::WeakImplHelper< css::lang::XComponent, { ::osl::Mutex m_aMutex; - css::uno::Reference< css::uno::XInterface > m_xLockListener; - OLockListener* m_pLockListener; + rtl::Reference< OLockListener > m_xLockListener; ::comphelper::OInterfaceContainerHelper2* m_pListenersContainer; // list of listeners _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
