diff options
Diffstat (limited to 'package')
-rw-r--r-- | package/source/xstor/xstorage.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx index 3fabad0e51e7..67c2afa61fd2 100644 --- a/package/source/xstor/xstorage.cxx +++ b/package/source/xstor/xstorage.cxx @@ -1831,6 +1831,13 @@ void OStorage::InternalDispose( bool bNotifyImpl ) // since the listeners could dispose the object while being notified lang::EventObject aSource( static_cast< ::cppu::OWeakObject* >(this) ); m_pData->m_aListenersContainer.disposeAndClear( aSource ); + + if ( !m_pImpl ) + { + SAL_INFO("package.xstor", THROW_WHERE "Disposed!"); + throw lang::DisposedException( THROW_WHERE ); + } + m_pImpl->m_nModifiedListenerCount = 0; if ( m_pData->m_bReadOnlyWrap ) |