[Libreoffice-commits] core.git: oox/source

Ashod Nakashian ashod.nakashian at collabora.co.uk
Thu Mar 22 08:52:27 UTC 2018


 oox/source/core/xmlfilterbase.cxx |   15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

New commits:
commit f82888653c853f236ab0035bb578a7129ec72fa5
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
Date:   Tue Mar 20 22:57:17 2018 -0400

    oox: don't segfault when failing to open a custom fragment
    
    Change-Id: Ie05d1feea2e930b117b3754c6e0db86bdb85bc61
    Reviewed-on: https://gerrit.libreoffice.org/51681
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx
index 00d202b315da..58333fb6c229 100644
--- a/oox/source/core/xmlfilterbase.cxx
+++ b/oox/source/core/xmlfilterbase.cxx
@@ -1118,13 +1118,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));
+            }
         }
     }
 }


More information about the Libreoffice-commits mailing list