summaryrefslogtreecommitdiff
path: root/framework/source/uiconfiguration/imagemanagerimpl.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'framework/source/uiconfiguration/imagemanagerimpl.cxx')
-rw-r--r--framework/source/uiconfiguration/imagemanagerimpl.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/framework/source/uiconfiguration/imagemanagerimpl.cxx b/framework/source/uiconfiguration/imagemanagerimpl.cxx
index 26aa0f33400c..0152387cc0b4 100644
--- a/framework/source/uiconfiguration/imagemanagerimpl.cxx
+++ b/framework/source/uiconfiguration/imagemanagerimpl.cxx
@@ -1169,6 +1169,7 @@ void ImageManagerImpl::implts_notifyContainerListener( const ConfigurationEvent&
{
std::unique_lock aGuard(m_mutex);
comphelper::OInterfaceIteratorHelper4 pIterator( aGuard, m_aConfigListeners );
+ aGuard.unlock();
while ( pIterator.hasMoreElements() )
{
try
@@ -1188,7 +1189,9 @@ void ImageManagerImpl::implts_notifyContainerListener( const ConfigurationEvent&
}
catch( const css::uno::RuntimeException& )
{
+ aGuard.lock();
pIterator.remove(aGuard);
+ aGuard.unlock();
}
}
}