summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2017-09-06 10:54:50 +0200
committerAndras Timar <andras.timar@collabora.com>2017-09-12 15:31:24 +0200
commit5ffa11a77369637f4f8698bbe0402fe1395e46b7 (patch)
tree62ed90167f7494eeaee0442620a08e3f95238cff
parent60ba6063a2a9063ba1bd39ceb322d613d2129628 (diff)
tdf#108572 let remove storage element
void OStorage_Impl::RemoveElement( SotElement_Impl* pElement ) expects that m_pAntiImpl will be nullptr, if not throws an exception. This caused that in case of deleting embedded database used for mail merge it wasn't fully removed and it was impossible to import the same datasource second time. Change-Id: I0310fde2ad819c96474a857f37ee42d052fad266 Reviewed-on: https://gerrit.libreoffice.org/42028 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/42043 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com>
-rw-r--r--package/source/xstor/xstorage.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx
index 68f47a89db85..d0c470e55ebf 100644
--- a/package/source/xstor/xstorage.cxx
+++ b/package/source/xstor/xstorage.cxx
@@ -3046,6 +3046,8 @@ void SAL_CALL OStorage::removeElement( const OUString& aElementName )
if ( !pElement )
throw container::NoSuchElementException( THROW_WHERE ); //???
+ if ( pElement->m_pStorage )
+ pElement->m_pStorage->m_pAntiImpl = nullptr;
m_pImpl->RemoveElement( pElement );
m_pImpl->m_bIsModified = true;