summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2022-01-14 09:41:29 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2022-01-14 09:45:31 +0100
commit8960dae3a24f5dd2712f1fe74de0c3b22552b12b (patch)
tree6b2d56915eddf3eb07d3a401be5365c90f946e1b
parentb32e46fbc3b536c1f56fe5d3714772ad673542a3 (diff)
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 <noel.grandin@collabora.co.uk>
-rw-r--r--include/ucbhelper/resultsethelper.hxx2
-rw-r--r--toolkit/source/hatchwindow/documentcloser.cxx13
-rw-r--r--ucbhelper/source/provider/resultset.cxx16
-rw-r--r--ucbhelper/source/provider/resultsethelper.cxx12
4 files changed, 14 insertions, 29 deletions
diff --git a/include/ucbhelper/resultsethelper.hxx b/include/ucbhelper/resultsethelper.hxx
index e929531aa586..486d07fe5f89 100644
--- a/include/ucbhelper/resultsethelper.hxx
+++ b/include/ucbhelper/resultsethelper.hxx
@@ -55,7 +55,7 @@ class UCBHELPER_DLLPUBLIC ResultSetImplHelper :
css::lang::XServiceInfo,
css::ucb::XDynamicResultSet>
{
- std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::lang::XEventListener>> m_pDisposeEventListeners;
+ comphelper::OInterfaceContainerHelper4<css::lang::XEventListener> m_aDisposeEventListeners;
bool m_bStatic;
bool m_bInitDone;
diff --git a/toolkit/source/hatchwindow/documentcloser.cxx b/toolkit/source/hatchwindow/documentcloser.cxx
index 10cb6b37ecd6..16df8536f5f1 100644
--- a/toolkit/source/hatchwindow/documentcloser.cxx
+++ b/toolkit/source/hatchwindow/documentcloser.cxx
@@ -46,7 +46,7 @@ class ODocumentCloser : public ::cppu::WeakImplHelper< css::lang::XComponent,
{
std::mutex m_aMutex;
css::uno::Reference< css::frame::XFrame > m_xFrame;
- std::unique_ptr<::comphelper::OInterfaceContainerHelper4<lang::XEventListener>> m_pListenersContainer; // list of listeners
+ ::comphelper::OInterfaceContainerHelper4<lang::XEventListener> m_aListenersContainer; // list of listeners
bool m_bDisposed;
@@ -170,8 +170,7 @@ void SAL_CALL ODocumentCloser::dispose()
throw lang::DisposedException();
lang::EventObject aSource( static_cast< ::cppu::OWeakObject* >(this) );
- if ( m_pListenersContainer )
- m_pListenersContainer->disposeAndClear( aGuard, aSource );
+ m_aListenersContainer.disposeAndClear( aGuard, aSource );
// TODO: trigger a main thread execution to close the frame
if ( m_xFrame.is() )
@@ -191,18 +190,14 @@ void SAL_CALL ODocumentCloser::addEventListener( const uno::Reference< lang::XEv
if ( m_bDisposed )
throw lang::DisposedException(); // TODO
- if ( !m_pListenersContainer )
- m_pListenersContainer.reset( new ::comphelper::OInterfaceContainerHelper4<lang::XEventListener>() );
-
- m_pListenersContainer->addInterface( xListener );
+ m_aListenersContainer.addInterface( xListener );
}
void SAL_CALL ODocumentCloser::removeEventListener( const uno::Reference< lang::XEventListener >& xListener )
{
std::unique_lock aGuard( m_aMutex );
- if ( m_pListenersContainer )
- m_pListenersContainer->removeInterface( xListener );
+ m_aListenersContainer.removeInterface( xListener );
}
// XServiceInfo
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<comphelper::OInterfaceContainerHelper4<lang::XEventListener>> m_pDisposeEventListeners;
+ comphelper::OInterfaceContainerHelper4<lang::XEventListener> m_aDisposeEventListeners;
std::unique_ptr<PropertyChangeListeners> 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<lang::XEventListener>());
-
- 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<css::lang::XEventListener>());
-
- 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 );
}