From 7722a5906d8f6765395205f5074f480ad365aa19 Mon Sep 17 00:00:00 2001 From: Maxim Monastirsky Date: Mon, 4 Nov 2013 14:06:10 +0200 Subject: fdo#68099 Move pdf viewer call to GUI related code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change fixes two bugs: 1) In it's old location at PDFFilter::implExport, the pdf viewer is called *before* the final file is actually written. It causes a problem under Windows, because we use ShellExecute function which fails if the file doesn't exist. Calling a function blocks execution, so we have no chance to write the file before that function fails. (fdo#68099) 2) Being a part of the saving/filter code means that the pdf viewer will open even when converting to a pdf in headless mode. It's definitely not something that we want to happen. Change-Id: I1a6f70ec76100ac9e008869aa57ad738ced3ab6c Reviewed-on: https://gerrit.libreoffice.org/6565 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- filter/source/pdf/pdffilter.cxx | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'filter') diff --git a/filter/source/pdf/pdffilter.cxx b/filter/source/pdf/pdffilter.cxx index 67b4bdbb67f9..092cad6a3f26 100644 --- a/filter/source/pdf/pdffilter.cxx +++ b/filter/source/pdf/pdffilter.cxx @@ -24,10 +24,7 @@ #include #include #include -#include -#include -using namespace css::system; // ------------- // - PDFFilter - // ------------- @@ -54,10 +51,6 @@ sal_Bool PDFFilter::implExport( const Sequence< PropertyValue >& rDescriptor ) sal_Bool bRet = sal_False; Reference< task::XStatusIndicator > xStatusIndicator; Reference< task::XInteractionHandler > xIH; - OUString aUrl; - - FilterConfigItem aItem( "Office.Common/Filter/PDF/Export/" ); - sal_Bool aViewPDF = aItem.ReadBool( "ViewPDFAfterExport", sal_False ); for ( sal_Int32 i = 0 ; ( i < nLength ) && !xOStm.is(); ++i) { @@ -69,8 +62,6 @@ sal_Bool PDFFilter::implExport( const Sequence< PropertyValue >& rDescriptor ) pValue[ i ].Value >>= xStatusIndicator; else if ( pValue[i].Name == "InteractionHandler" ) pValue[i].Value >>= xIH; - else if ( pValue[ i ].Name == "URL" ) - pValue[ i ].Value >>= aUrl; } /* we don't get FilterData if we are exporting directly @@ -142,10 +133,6 @@ sal_Bool PDFFilter::implExport( const Sequence< PropertyValue >& rDescriptor ) } } - if(aViewPDF==sal_True) { - Reference xSystemShellExecute(SystemShellExecute::create( ::comphelper::getProcessComponentContext() ) ); //Open the newly exported pdf - xSystemShellExecute->execute(aUrl, "", SystemShellExecuteFlags::URIS_ONLY ); } - return bRet; } -- cgit