From 26957fc325c27cf61e8ef5555b380d627def4931 Mon Sep 17 00:00:00 2001 From: Szymon Kłos Date: Wed, 6 Sep 2017 10:54:50 +0200 Subject: tdf#108572 let remove storage element MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Szymon Kłos --- package/source/xstor/xstorage.cxx | 2 ++ 1 file changed, 2 insertions(+) (limited to 'package') diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx index 2edbfcbc1873..79b239588c77 100644 --- a/package/source/xstor/xstorage.cxx +++ b/package/source/xstor/xstorage.cxx @@ -2816,6 +2816,8 @@ void SAL_CALL OStorage::removeElement( const OUString& aElementName ) if ( !pElement ) throw container::NoSuchElementException( THROW_WHERE ); //??? + if ( pElement->m_xStorage ) + pElement->m_xStorage->m_pAntiImpl = nullptr; m_pImpl->RemoveElement( pElement ); m_pImpl->m_bIsModified = true; -- cgit