diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-02-14 13:14:14 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2023-02-14 16:57:09 +0000 |
commit | 0e6e0270d25c4181ed15bd04123e20672f1e3a0b (patch) | |
tree | 08a1fdfa9601d13698f680a58f8a5641690f48db /ucb/source | |
parent | b429ca9b45b897da4c47a261ff582b536f27acd6 (diff) |
no need to use unique_ptr for OInterfaceContainerHelper4
it has an empty size of one pointer, so it saves no memory to use
unique_ptr.
Need to fix the const-ness of some methods in OInterfaceContainerHelper4
Change-Id: I0c0c28a228ccfe0e97174fbc83555059fc351b3c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147007
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'ucb/source')
-rw-r--r-- | ucb/source/cacher/contentresultsetwrapper.cxx | 14 | ||||
-rw-r--r-- | ucb/source/cacher/contentresultsetwrapper.hxx | 4 | ||||
-rw-r--r-- | ucb/source/cacher/dynamicresultsetwrapper.cxx | 13 | ||||
-rw-r--r-- | ucb/source/cacher/dynamicresultsetwrapper.hxx | 4 | ||||
-rw-r--r-- | ucb/source/core/ucbstore.cxx | 42 | ||||
-rw-r--r-- | ucb/source/core/ucbstore.hxx | 4 |
6 files changed, 26 insertions, 55 deletions
diff --git a/ucb/source/cacher/contentresultsetwrapper.cxx b/ucb/source/cacher/contentresultsetwrapper.cxx index e5917f3fdbc5..14393ff497f4 100644 --- a/ucb/source/cacher/contentresultsetwrapper.cxx +++ b/ucb/source/cacher/contentresultsetwrapper.cxx @@ -299,11 +299,11 @@ void SAL_CALL ContentResultSetWrapper::dispose() aGuard.lock(); isCleared = false; } - if( m_pDisposeEventListeners && m_pDisposeEventListeners->getLength(aGuard) ) + if( m_aDisposeEventListeners.getLength(aGuard) ) { EventObject aEvt; aEvt.Source = static_cast< XComponent * >( this ); - m_pDisposeEventListeners->disposeAndClear( aGuard, aEvt ); + m_aDisposeEventListeners.disposeAndClear( aGuard, aEvt ); } if( m_pPropertyChangeListeners ) @@ -331,11 +331,7 @@ void SAL_CALL ContentResultSetWrapper::addEventListener( const Reference< XEvent std::unique_lock aGuard( m_aMutex ); impl_EnsureNotDisposed(aGuard); - if ( !m_pDisposeEventListeners ) - m_pDisposeEventListeners.reset( - new OInterfaceContainerHelper4<XEventListener>() ); - - m_pDisposeEventListeners->addInterface( aGuard, Listener ); + m_aDisposeEventListeners.addInterface( aGuard, Listener ); } @@ -344,9 +340,7 @@ void SAL_CALL ContentResultSetWrapper::removeEventListener( const Reference< XEv { std::unique_lock aGuard( m_aMutex ); impl_EnsureNotDisposed(aGuard); - - if ( m_pDisposeEventListeners ) - m_pDisposeEventListeners->removeInterface( aGuard, Listener ); + m_aDisposeEventListeners.removeInterface( aGuard, Listener ); } diff --git a/ucb/source/cacher/contentresultsetwrapper.hxx b/ucb/source/cacher/contentresultsetwrapper.hxx index 4c67ca89ef29..4c1ae370ff20 100644 --- a/ucb/source/cacher/contentresultsetwrapper.hxx +++ b/ucb/source/cacher/contentresultsetwrapper.hxx @@ -85,8 +85,8 @@ private: //management of listeners bool m_bDisposed; ///Dispose call ready. bool m_bInDispose;///In dispose call - std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::lang::XEventListener>> - m_pDisposeEventListeners; + comphelper::OInterfaceContainerHelper4<css::lang::XEventListener> + m_aDisposeEventListeners; std::unique_ptr<PropertyChangeListenerContainer_Impl> m_pPropertyChangeListeners; std::unique_ptr<VetoableChangeListenerContainer_Impl> diff --git a/ucb/source/cacher/dynamicresultsetwrapper.cxx b/ucb/source/cacher/dynamicresultsetwrapper.cxx index 8ad5b53f3055..db881dad492f 100644 --- a/ucb/source/cacher/dynamicresultsetwrapper.cxx +++ b/ucb/source/cacher/dynamicresultsetwrapper.cxx @@ -133,11 +133,11 @@ void SAL_CALL DynamicResultSetWrapper::dispose() xSourceComponent = m_xSource; - if( m_pDisposeEventListeners && m_pDisposeEventListeners->getLength(aGuard) ) + if( m_aDisposeEventListeners.getLength(aGuard) ) { EventObject aEvt; aEvt.Source = static_cast< XComponent * >( this ); - m_pDisposeEventListeners->disposeAndClear( aGuard, aEvt ); + m_aDisposeEventListeners.disposeAndClear( aGuard, aEvt ); } /* //@todo ?? ( only if java collection needs to long ) @@ -156,11 +156,7 @@ void SAL_CALL DynamicResultSetWrapper::addEventListener( const Reference< XEvent impl_EnsureNotDisposed(); std::unique_lock aGuard( m_aMutex ); - if ( !m_pDisposeEventListeners ) - m_pDisposeEventListeners.reset( - new OInterfaceContainerHelper4<XEventListener>() ); - - m_pDisposeEventListeners->addInterface( aGuard, Listener ); + m_aDisposeEventListeners.addInterface( aGuard, Listener ); } @@ -170,8 +166,7 @@ void SAL_CALL DynamicResultSetWrapper::removeEventListener( const Reference< XEv impl_EnsureNotDisposed(); std::unique_lock aGuard( m_aMutex ); - if ( m_pDisposeEventListeners ) - m_pDisposeEventListeners->removeInterface( aGuard, Listener ); + m_aDisposeEventListeners.removeInterface( aGuard, Listener ); } diff --git a/ucb/source/cacher/dynamicresultsetwrapper.hxx b/ucb/source/cacher/dynamicresultsetwrapper.hxx index 66548a64b420..a7917506d874 100644 --- a/ucb/source/cacher/dynamicresultsetwrapper.hxx +++ b/ucb/source/cacher/dynamicresultsetwrapper.hxx @@ -41,8 +41,8 @@ private: //management of listeners bool m_bDisposed; ///Dispose call ready. bool m_bInDispose;///In dispose call - std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::lang::XEventListener>> - m_pDisposeEventListeners; + comphelper::OInterfaceContainerHelper4<css::lang::XEventListener> + m_aDisposeEventListeners; protected: rtl::Reference<DynamicResultSetWrapperListener> m_xMyListenerImpl; diff --git a/ucb/source/core/ucbstore.cxx b/ucb/source/core/ucbstore.cxx index 65c0e531e2e2..75ec9aa0a270 100644 --- a/ucb/source/core/ucbstore.cxx +++ b/ucb/source/core/ucbstore.cxx @@ -1053,20 +1053,18 @@ css::uno::Sequence< OUString > SAL_CALL PersistentPropertySet::getSupportedServi void SAL_CALL PersistentPropertySet::dispose() { std::unique_lock l(m_aMutex); - if ( m_pDisposeEventListeners && - m_pDisposeEventListeners->getLength(l) ) + if ( m_aDisposeEventListeners.getLength(l) ) { EventObject aEvt; aEvt.Source = static_cast< XComponent * >( this ); - m_pDisposeEventListeners->disposeAndClear( l, aEvt ); + m_aDisposeEventListeners.disposeAndClear( l, aEvt ); } - if ( m_pPropSetChangeListeners && - m_pPropSetChangeListeners->getLength(l) ) + if ( m_aPropSetChangeListeners.getLength(l) ) { EventObject aEvt; aEvt.Source = static_cast< XPropertySetInfoChangeNotifier * >( this ); - m_pPropSetChangeListeners->disposeAndClear( l, aEvt ); + m_aPropSetChangeListeners.disposeAndClear( l, aEvt ); } if ( m_pPropertyChangeListeners ) @@ -1084,11 +1082,7 @@ void SAL_CALL PersistentPropertySet::addEventListener( { std::unique_lock l(m_aMutex); - if ( !m_pDisposeEventListeners ) - m_pDisposeEventListeners.reset( - new OInterfaceContainerHelper4<css::lang::XEventListener>() ); - - m_pDisposeEventListeners->addInterface( l, Listener ); + m_aDisposeEventListeners.addInterface( l, Listener ); } @@ -1097,8 +1091,7 @@ void SAL_CALL PersistentPropertySet::removeEventListener( const Reference< XEventListener >& Listener ) { std::unique_lock l(m_aMutex); - if ( m_pDisposeEventListeners ) - m_pDisposeEventListeners->removeInterface( l, Listener ); + m_aDisposeEventListeners.removeInterface( l, Listener ); // Note: Don't want to delete empty container here -> performance. } @@ -1431,8 +1424,7 @@ void SAL_CALL PersistentPropertySet::addProperty( m_pInfo->reset(); // Notify propertyset info change listeners. - if ( m_pPropSetChangeListeners && - m_pPropSetChangeListeners->getLength(aGuard) ) + if ( m_aPropSetChangeListeners.getLength(aGuard) ) { PropertySetInfoChangeEvent evt( static_cast< OWeakObject * >( this ), @@ -1556,8 +1548,7 @@ void SAL_CALL PersistentPropertySet::removeProperty( const OUString& Name ) { sal_Int32 nHandle = -1; - if ( m_pPropSetChangeListeners && - m_pPropSetChangeListeners->getLength(aGuard) ) + if ( m_aPropSetChangeListeners.getLength(aGuard) ) { // Obtain property handle ( needed for propertysetinfo // change event )... @@ -1589,8 +1580,7 @@ void SAL_CALL PersistentPropertySet::removeProperty( const OUString& Name ) m_pInfo->reset(); // Notify propertyset info change listeners. - if ( m_pPropSetChangeListeners && - m_pPropSetChangeListeners->getLength(aGuard) ) + if ( m_aPropSetChangeListeners.getLength(aGuard) ) { PropertySetInfoChangeEvent evt( static_cast< OWeakObject * >( this ), @@ -1635,11 +1625,7 @@ void SAL_CALL PersistentPropertySet::addPropertySetInfoChangeListener( { std::unique_lock aGuard(m_aMutex); - if ( !m_pPropSetChangeListeners ) - m_pPropSetChangeListeners.reset( - new OInterfaceContainerHelper4<XPropertySetInfoChangeListener>() ); - - m_pPropSetChangeListeners->addInterface( aGuard, Listener ); + m_aPropSetChangeListeners.addInterface( aGuard, Listener ); } @@ -1648,8 +1634,7 @@ void SAL_CALL PersistentPropertySet::removePropertySetInfoChangeListener( const Reference< XPropertySetInfoChangeListener >& Listener ) { std::unique_lock aGuard(m_aMutex); - if ( m_pPropSetChangeListeners ) - m_pPropSetChangeListeners->removeInterface( aGuard, Listener ); + m_aPropSetChangeListeners.removeInterface( aGuard, Listener ); } @@ -1923,11 +1908,8 @@ void PersistentPropertySet::notifyPropertySetInfoChange( std::unique_lock<std::mutex>& rGuard, const PropertySetInfoChangeEvent& evt ) const { - if ( !m_pPropSetChangeListeners ) - return; - // Notify event listeners. - m_pPropSetChangeListeners->notifyEach( rGuard, &XPropertySetInfoChangeListener::propertySetInfoChange, evt ); + m_aPropSetChangeListeners.notifyEach( rGuard, &XPropertySetInfoChangeListener::propertySetInfoChange, evt ); } diff --git a/ucb/source/core/ucbstore.hxx b/ucb/source/core/ucbstore.hxx index 5f431fa8ac0d..31de991246ef 100644 --- a/ucb/source/core/ucbstore.hxx +++ b/ucb/source/core/ucbstore.hxx @@ -163,8 +163,8 @@ class PersistentPropertySet : public cppu::WeakImplHelper < OUString m_aKey; OUString m_aFullKey; mutable std::mutex m_aMutex; - std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::lang::XEventListener>> m_pDisposeEventListeners; - std::unique_ptr<comphelper::OInterfaceContainerHelper4<css::beans::XPropertySetInfoChangeListener>> m_pPropSetChangeListeners; + comphelper::OInterfaceContainerHelper4<css::lang::XEventListener> m_aDisposeEventListeners; + comphelper::OInterfaceContainerHelper4<css::beans::XPropertySetInfoChangeListener> m_aPropSetChangeListeners; std::unique_ptr<PropertyListeners_Impl> m_pPropertyChangeListeners; private: |