summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshod Nakashian <ashod.nakashian@collabora.co.uk>2018-03-20 22:57:17 -0400
committerJan Holesovsky <kendy@collabora.com>2018-04-05 10:54:48 +0200
commit6ac27e7d3deb8e137860d8b31f1c5eace616de53 (patch)
treec60daa04cbc5e53f0cfa1f838c34288d21516ed4
parent3a53fe4456f72dd57640b5bb33c5f08da96069f7 (diff)
oox: don't segfault when failing to open a custom fragmentcp-5.3-44
Change-Id: Ie05d1feea2e930b117b3754c6e0db86bdb85bc61 Reviewed-on: https://gerrit.libreoffice.org/51681 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com> (cherry picked from commit f82888653c853f236ab0035bb578a7129ec72fa5) Reviewed-on: https://gerrit.libreoffice.org/52227 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com>
-rw-r--r--oox/source/core/xmlfilterbase.cxx15
1 files changed, 9 insertions, 6 deletions
diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx
index 7caf551c1836..8b8454d4202d 100644
--- a/oox/source/core/xmlfilterbase.cxx
+++ b/oox/source/core/xmlfilterbase.cxx
@@ -1119,13 +1119,16 @@ void XmlFilterBase::exportCustomFragments()
addRelation(customFragmentTypes[j], customFragmentTargets[j]);
const OUString aFilename = customFragmentTargets[j];
Reference<XOutputStream> xOutStream = openOutputStream(aFilename);
- xOutStream->writeBytes(customFragments[j]);
- uno::Reference<XPropertySet> xProps(xOutStream, uno::UNO_QUERY);
- if (xProps.is())
+ if (xOutStream.is())
{
- const OUString aType = comphelper::OFOPXMLHelper::GetContentTypeByName(aContentTypes, aFilename);
- const OUString aContentType = (aType.getLength() ? aType : OUString("application/octet-stream"));
- xProps->setPropertyValue("MediaType", uno::makeAny(aContentType));
+ xOutStream->writeBytes(customFragments[j]);
+ uno::Reference<XPropertySet> xProps(xOutStream, uno::UNO_QUERY);
+ if (xProps.is())
+ {
+ const OUString aType = comphelper::OFOPXMLHelper::GetContentTypeByName(aContentTypes, aFilename);
+ const OUString aContentType = (aType.getLength() ? aType : OUString("application/octet-stream"));
+ xProps->setPropertyValue("MediaType", uno::makeAny(aContentType));
+ }
}
}
}