summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2011-01-21 10:50:49 +0000
committerCaolán McNamara <caolanm@redhat.com>2011-01-21 10:50:49 +0000
commitd23b5e5e0cdb9cd6f981c0949e27230b8297231e (patch)
tree0db0b95b52d7ea34cdd59103f8ef0890b161d2d9 /framework
parent76f1fc1cb02118a177191014a4c5b8c21cfda1e1 (diff)
break cycle and clear owner reference on dispose
Diffstat (limited to 'framework')
-rw-r--r--framework/source/uiconfiguration/imagemanagerimpl.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/framework/source/uiconfiguration/imagemanagerimpl.cxx b/framework/source/uiconfiguration/imagemanagerimpl.cxx
index 818ef14fc043..15f324185ddb 100644
--- a/framework/source/uiconfiguration/imagemanagerimpl.cxx
+++ b/framework/source/uiconfiguration/imagemanagerimpl.cxx
@@ -752,6 +752,8 @@ void ImageManagerImpl::dispose()
}
delete m_pDefaultImageList;
m_pDefaultImageList = 0;
+
+ m_xOwner.clear();
}
}
@@ -1455,6 +1457,10 @@ void ImageManagerImpl::implts_notifyContainerListener( const ConfigurationEvent&
void ImageManagerImpl::clear()
{
ResetableGuard aGuard( m_aLock );
+
+ if (!m_pUserImageList)
+ return;
+
for ( sal_Int32 n = 0; n < ImageType_COUNT; n++ )
{
delete m_pUserImageList[n];