[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.0' - oox/source

Ashod Nakashian ashod.nakashian at collabora.co.uk
Thu Apr 5 09:10:15 UTC 2018


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

New commits:
commit 8556df333ee23daf918ec50ce675369e3466380f
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>
    (cherry picked from commit f82888653c853f236ab0035bb578a7129ec72fa5)
    Reviewed-on: https://gerrit.libreoffice.org/52228
    Reviewed-by: Jan Holesovsky <kendy at collabora.com>
    Tested-by: Jan Holesovsky <kendy at collabora.com>

diff --git a/oox/source/core/xmlfilterbase.cxx b/oox/source/core/xmlfilterbase.cxx
index 873991a8f998..39a5858ae642 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));
+            }
         }
     }
 }


More information about the Libreoffice-commits mailing list