summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-05-20 11:12:40 +0200
committerStephan Bergmann <sbergman@redhat.com>2014-05-20 11:17:22 +0200
commit423921b085de43f53e42f957889dd96378d2c3c4 (patch)
tree17973574eee0df43d97e128d1eb9046cd6e1669a
parent8d54796bf152499ecbe61788be64c9035f725dfa (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
-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 29fdb60d0328..1858d76c3dcf 100644
--- a/package/source/xstor/xstorage.cxx
+++ b/package/source/xstor/xstorage.cxx
@@ -576,13 +576,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 )
{