summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-05-20 11:12:40 +0200
committerCaolán McNamara <caolanm@redhat.com>2014-05-20 06:51:30 -0500
commit164e10869f91b75db03b09f53e1467098b3e6b93 (patch)
tree0f16d0bf93782a3d73837c5bc9a01b5fcf250a00
parent51a868729b5adfa402095f5c08fa889bddcd1b34 (diff)
fdo#78949 Handle (SAXParse-)Exception that can't pass getAllRelationships
...like it was already done in the similar else branch of ReadRelInfoIfNecessary. The call site at GetAllRelationshipsIfAny will translate an m_nRelInfoStatus that remained RELINFO_NOT_INIT into an IOException. Change-Id: I79c601acd23b3b0020c7b4de4c20b0282524bce1 (cherry picked from commit 423921b085de43f53e42f957889dd96378d2c3c4) Reviewed-on: https://gerrit.libreoffice.org/9411 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--package/source/xstor/xstorage.cxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/package/source/xstor/xstorage.cxx b/package/source/xstor/xstorage.cxx
index 9e2ffb72730d..8775561dde77 100644
--- a/package/source/xstor/xstorage.cxx
+++ b/package/source/xstor/xstorage.cxx
@@ -572,13 +572,19 @@ void OStorage_Impl::ReadRelInfoIfNecessary()
{
// Init from original stream
uno::Reference< io::XInputStream > xRelInfoStream = GetRelInfoStreamForName( OUString() );
- if ( xRelInfoStream.is() )
- m_aRelInfo = ::comphelper::OFOPXMLHelper::ReadRelationsInfoSequence(
+ try
+ {
+ if ( xRelInfoStream.is() )
+ m_aRelInfo = ::comphelper::OFOPXMLHelper::ReadRelationsInfoSequence(
xRelInfoStream,
"_rels/.rels",
m_xContext );
-
- m_nRelInfoStatus = RELINFO_READ;
+ m_nRelInfoStatus = RELINFO_READ;
+ }
+ catch (css::uno::Exception & e)
+ {
+ SAL_INFO("package.xstor", "caught Exception " << e.Message);
+ }
}
else if ( m_nRelInfoStatus == RELINFO_CHANGED_STREAM )
{