Kaydet (Commit) 1168956b authored tarafından Noel Grandin's avatar Noel Grandin

loplugin:useuniqueptr in BaseContent

Change-Id: I03a6942e883b75e86f4ee4e7d01198dada70238f
Reviewed-on: https://gerrit.libreoffice.org/48707Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst 53d6326b
......@@ -128,11 +128,6 @@ BaseContent::~BaseContent( )
m_pMyShell->deregisterNotifier( m_aUncPath,this );
}
m_pMyShell->m_pProvider->release();
delete m_pDisposeEventListeners;
delete m_pContentEventListeners;
delete m_pPropertyListener;
delete m_pPropertySetInfoChangeListeners;
}
......@@ -182,8 +177,8 @@ BaseContent::addEventListener( const Reference< lang::XEventListener >& Listener
osl::MutexGuard aGuard( m_aMutex );
if ( ! m_pDisposeEventListeners )
m_pDisposeEventListeners =
new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex );
m_pDisposeEventListeners.reset(
new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex ) );
m_pDisposeEventListeners->addInterface( Listener );
}
......@@ -203,27 +198,19 @@ void SAL_CALL
BaseContent::dispose()
{
lang::EventObject aEvt;
comphelper::OInterfaceContainerHelper2* pDisposeEventListeners;
comphelper::OInterfaceContainerHelper2* pContentEventListeners;
comphelper::OInterfaceContainerHelper2* pPropertySetInfoChangeListeners;
PropertyListeners* pPropertyListener;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> pDisposeEventListeners;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> pContentEventListeners;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> pPropertySetInfoChangeListeners;
std::unique_ptr<PropertyListeners> pPropertyListener;
{
osl::MutexGuard aGuard( m_aMutex );
aEvt.Source = static_cast< XContent* >( this );
pDisposeEventListeners = m_pDisposeEventListeners;
m_pDisposeEventListeners = nullptr;
pContentEventListeners = m_pContentEventListeners;
m_pContentEventListeners = nullptr;
pPropertySetInfoChangeListeners = m_pPropertySetInfoChangeListeners;
m_pPropertySetInfoChangeListeners = nullptr;
pPropertyListener = m_pPropertyListener;
m_pPropertyListener = nullptr;
pDisposeEventListeners = std::move(m_pDisposeEventListeners);
pContentEventListeners = std::move(m_pContentEventListeners);
pPropertySetInfoChangeListeners = std::move(m_pPropertySetInfoChangeListeners);
pPropertyListener = std::move(m_pPropertyListener);
}
if ( pDisposeEventListeners && pDisposeEventListeners->getLength() )
......@@ -237,11 +224,6 @@ BaseContent::dispose()
if( pPropertySetInfoChangeListeners )
pPropertySetInfoChangeListeners->disposeAndClear( aEvt );
delete pDisposeEventListeners;
delete pContentEventListeners;
delete pPropertyListener;
delete pPropertySetInfoChangeListeners;
}
// XServiceInfo
......@@ -422,7 +404,7 @@ BaseContent::addPropertiesChangeListener(
osl::MutexGuard aGuard( m_aMutex );
if( ! m_pPropertyListener )
m_pPropertyListener = new PropertyListeners( m_aEventListenerMutex );
m_pPropertyListener.reset( new PropertyListeners( m_aEventListenerMutex ) );
if( PropertyNames.getLength() == 0 )
......@@ -521,8 +503,8 @@ BaseContent::addContentEventListener(
osl::MutexGuard aGuard( m_aMutex );
if ( ! m_pContentEventListeners )
m_pContentEventListeners =
new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex );
m_pContentEventListeners.reset(
new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex ) );
m_pContentEventListeners->addInterface( Listener );
......@@ -646,7 +628,7 @@ BaseContent::addPropertySetInfoChangeListener(
{
osl::MutexGuard aGuard( m_aMutex );
if( ! m_pPropertySetInfoChangeListeners )
m_pPropertySetInfoChangeListeners = new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex );
m_pPropertySetInfoChangeListeners.reset( new comphelper::OInterfaceContainerHelper2( m_aEventListenerMutex ) );
m_pPropertySetInfoChangeListeners->addInterface( Listener );
}
......
......@@ -232,10 +232,10 @@ namespace fileaccess {
osl::Mutex m_aMutex;
osl::Mutex m_aEventListenerMutex;
comphelper::OInterfaceContainerHelper2* m_pDisposeEventListeners;
comphelper::OInterfaceContainerHelper2* m_pContentEventListeners;
comphelper::OInterfaceContainerHelper2* m_pPropertySetInfoChangeListeners;
PropertyListeners* m_pPropertyListener;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> m_pDisposeEventListeners;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> m_pContentEventListeners;
std::unique_ptr<comphelper::OInterfaceContainerHelper2> m_pPropertySetInfoChangeListeners;
std::unique_ptr<PropertyListeners> m_pPropertyListener;
// Private Methods
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment