From 8960dae3a24f5dd2712f1fe74de0c3b22552b12b Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Fri, 14 Jan 2022 09:41:29 +0200 Subject: no need to hold OInterfaceContainerHelper4 by unique_ptr when empty, it is only a single pointer big anyway Change-Id: I3e45dd705c4bef3799435617db1a4192d62860e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128403 Tested-by: Jenkins Reviewed-by: Noel Grandin --- ucbhelper/source/provider/resultset.cxx | 16 +++++----------- ucbhelper/source/provider/resultsethelper.cxx | 12 ++++-------- 2 files changed, 9 insertions(+), 19 deletions(-) (limited to 'ucbhelper') diff --git a/ucbhelper/source/provider/resultset.cxx b/ucbhelper/source/provider/resultset.cxx index 0bc1398b724c..162f32cffabf 100644 --- a/ucbhelper/source/provider/resultset.cxx +++ b/ucbhelper/source/provider/resultset.cxx @@ -147,7 +147,7 @@ struct ResultSet_Impl uno::Sequence< beans::Property > m_aProperties; rtl::Reference< ResultSetDataSupplier > m_xDataSupplier; std::mutex m_aMutex; - std::unique_ptr> m_pDisposeEventListeners; + comphelper::OInterfaceContainerHelper4 m_aDisposeEventListeners; std::unique_ptr m_pPropertyChangeListeners; sal_Int32 m_nPos; bool m_bWasNull; @@ -236,12 +236,11 @@ void SAL_CALL ResultSet::dispose() { std::unique_lock aGuard( m_pImpl->m_aMutex ); - if ( m_pImpl->m_pDisposeEventListeners && - m_pImpl->m_pDisposeEventListeners->getLength() ) + if ( m_pImpl->m_aDisposeEventListeners.getLength() ) { lang::EventObject aEvt; aEvt.Source = static_cast< lang::XComponent * >( this ); - m_pImpl->m_pDisposeEventListeners->disposeAndClear( aGuard, aEvt ); + m_pImpl->m_aDisposeEventListeners.disposeAndClear( aGuard, aEvt ); aGuard.lock(); } @@ -263,11 +262,7 @@ void SAL_CALL ResultSet::addEventListener( { std::unique_lock aGuard( m_pImpl->m_aMutex ); - if ( !m_pImpl->m_pDisposeEventListeners ) - m_pImpl->m_pDisposeEventListeners.reset( - new comphelper::OInterfaceContainerHelper4()); - - m_pImpl->m_pDisposeEventListeners->addInterface( Listener ); + m_pImpl->m_aDisposeEventListeners.addInterface( Listener ); } @@ -277,8 +272,7 @@ void SAL_CALL ResultSet::removeEventListener( { std::unique_lock aGuard( m_pImpl->m_aMutex ); - if ( m_pImpl->m_pDisposeEventListeners ) - m_pImpl->m_pDisposeEventListeners->removeInterface( Listener ); + m_pImpl->m_aDisposeEventListeners.removeInterface( Listener ); } diff --git a/ucbhelper/source/provider/resultsethelper.cxx b/ucbhelper/source/provider/resultsethelper.cxx index 77c901d62ee7..25ead4bd8a22 100644 --- a/ucbhelper/source/provider/resultsethelper.cxx +++ b/ucbhelper/source/provider/resultsethelper.cxx @@ -90,11 +90,11 @@ void SAL_CALL ResultSetImplHelper::dispose() { std::unique_lock aGuard( m_aMutex ); - if ( m_pDisposeEventListeners && m_pDisposeEventListeners->getLength() ) + if ( m_aDisposeEventListeners.getLength() ) { lang::EventObject aEvt; aEvt.Source = static_cast< lang::XComponent * >( this ); - m_pDisposeEventListeners->disposeAndClear( aGuard, aEvt ); + m_aDisposeEventListeners.disposeAndClear( aGuard, aEvt ); } } @@ -105,10 +105,7 @@ void SAL_CALL ResultSetImplHelper::addEventListener( { std::unique_lock aGuard( m_aMutex ); - if ( !m_pDisposeEventListeners ) - m_pDisposeEventListeners.reset(new comphelper::OInterfaceContainerHelper4()); - - m_pDisposeEventListeners->addInterface( Listener ); + m_aDisposeEventListeners.addInterface( Listener ); } @@ -118,8 +115,7 @@ void SAL_CALL ResultSetImplHelper::removeEventListener( { std::unique_lock aGuard( m_aMutex ); - if ( m_pDisposeEventListeners ) - m_pDisposeEventListeners->removeInterface( Listener ); + m_aDisposeEventListeners.removeInterface( Listener ); } -- cgit