sw/source/filter/xml/xmlimp.cxx |   43 +++++++++++++++++++++-------------------
 1 file changed, 23 insertions(+), 20 deletions(-)

New commits:
commit a82e7cc9ed17a2500ad8cb9ffe54c412b0d8063f
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Fri May 26 09:32:36 2023 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Fri May 26 13:46:58 2023 +0200

    ofz#59338 Abrt failed_throw
    
    Change-Id: Ib70dfef2c4ecce024162409ffd8c210d6feef1eb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152297
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/sw/source/filter/xml/xmlimp.cxx b/sw/source/filter/xml/xmlimp.cxx
index 7ae8c966c46e..594cb893ca4c 100644
--- a/sw/source/filter/xml/xmlimp.cxx
+++ b/sw/source/filter/xml/xmlimp.cxx
@@ -1841,26 +1841,29 @@ extern "C" SAL_DLLPUBLIC_EXPORT bool 
TestPDFExportFODT(SvStream &rStream)
 
     utl::ConnectFrameControllerModel(xTargetFrame, xController, xModel);
 
-    utl::MediaDescriptor aMediaDescriptor;
-    aMediaDescriptor["FilterName"] <<= OUString("writer_pdf_Export");
-
-    utl::TempFileNamed aTempFile;
-    aTempFile.EnableKillingFile();
-
-    uno::Reference<document::XFilter> xPDFFilter(
-        
xMultiServiceFactory->createInstance("com.sun.star.document.PDFFilter"), 
uno::UNO_QUERY);
-    uno::Reference<document::XExporter> xExporter(xPDFFilter, uno::UNO_QUERY);
-    xExporter->setSourceDocument(xModel);
-
-    SvFileStream aOutputStream(aTempFile.GetURL(), StreamMode::WRITE);
-    uno::Reference<io::XOutputStream> xOutputStream(new 
utl::OStreamWrapper(aOutputStream));
-
-    uno::Sequence<beans::PropertyValue> 
aDescriptor(comphelper::InitPropertySequence({
-        { "FilterName", uno::Any(OUString("writer_pdf_Export")) },
-        { "OutputStream", uno::Any(xOutputStream) }
-    }));
-    xPDFFilter->filter(aDescriptor);
-    aOutputStream.Close();
+    if (ret)
+    {
+        utl::MediaDescriptor aMediaDescriptor;
+        aMediaDescriptor["FilterName"] <<= OUString("writer_pdf_Export");
+
+        utl::TempFileNamed aTempFile;
+        aTempFile.EnableKillingFile();
+
+        uno::Reference<document::XFilter> xPDFFilter(
+            
xMultiServiceFactory->createInstance("com.sun.star.document.PDFFilter"), 
uno::UNO_QUERY);
+        uno::Reference<document::XExporter> xExporter(xPDFFilter, 
uno::UNO_QUERY);
+        xExporter->setSourceDocument(xModel);
+
+        SvFileStream aOutputStream(aTempFile.GetURL(), StreamMode::WRITE);
+        uno::Reference<io::XOutputStream> xOutputStream(new 
utl::OStreamWrapper(aOutputStream));
+
+        uno::Sequence<beans::PropertyValue> 
aDescriptor(comphelper::InitPropertySequence({
+            { "FilterName", uno::Any(OUString("writer_pdf_Export")) },
+            { "OutputStream", uno::Any(xOutputStream) }
+        }));
+        xPDFFilter->filter(aDescriptor);
+        aOutputStream.Close();
+    }
 
     css::uno::Reference<css::util::XCloseable> xClose(xModel, 
css::uno::UNO_QUERY);
     xClose->close(false);

Reply via email to