From 5923d4173d5000d3462fa6e55952bfc5101b6bfa Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Wed, 19 Aug 2020 09:24:45 +0100 Subject: Restore "bff: terminate on SAXException on malformed input" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 50fd69dfe25d14c75f0dae7fa1bf276ea6deefd3. now that... commit 986bd28388df745dd969e7be7c3bda36b2b2cb0e Date: Thu Aug 6 10:50:47 2020 +0100 ofz#24641 libc++abi __cxa_exception has grown another member solved the substantial problem Change-Id: I38734d99a2c8d9e272547ea657555eb4b59a5052 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100974 Tested-by: Jenkins Reviewed-by: Caolán McNamara --- package/source/xstor/xstorage.cxx | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx index d7c0ed9afd54..8a13fd82b32d 100644 --- a/package/source/xstor/xstorage.cxx +++ b/package/source/xstor/xstorage.cxx @@ -4744,7 +4744,28 @@ uno::Sequence< uno::Sequence< beans::StringPair > > SAL_CALL OStorage::getAllRel if ( m_pData->m_nStorageType != embed::StorageFormats::OFOPXML ) throw uno::RuntimeException( THROW_WHERE ); - return m_pImpl->GetAllRelationshipsIfAny(); + uno::Sequence< uno::Sequence< beans::StringPair > > aRet; + try + { + aRet = m_pImpl->GetAllRelationshipsIfAny(); + } + catch (const io::IOException&) + { + throw; + } + catch (const uno::RuntimeException&) + { + throw; + } + catch (const uno::Exception &) + { + uno::Any aCaught( ::cppu::getCaughtException() ); + throw lang::WrappedTargetRuntimeException(THROW_WHERE "Can't getAllRelationships!", + uno::Reference< uno::XInterface >(), + aCaught); + } + + return aRet; } void SAL_CALL OStorage::insertRelationshipByID( const OUString& sID, const uno::Sequence< beans::StringPair >& aEntry, sal_Bool bReplace ) -- cgit