Tobias Gritschacher has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/319863

Change subject: Use MW StreamFile class to stream PDF file to browser
......................................................................

Use MW StreamFile class to stream PDF file to browser

Bug: T149775
Change-Id: Ie68ebddb5409f69cf3509219796994be0cf1a6b5
---
M specials/SpecialElectronPdf.php
1 file changed, 8 insertions(+), 7 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/ElectronPdfService 
refs/changes/63/319863/1

diff --git a/specials/SpecialElectronPdf.php b/specials/SpecialElectronPdf.php
index 9201322..321f992 100644
--- a/specials/SpecialElectronPdf.php
+++ b/specials/SpecialElectronPdf.php
@@ -201,13 +201,14 @@
        private function sendPdfToOutput( $page ) {
                $fileMetaData = stream_get_meta_data( $this->tempFileHandle );
                $contentDisposition = FileBackend::makeContentDisposition( 
'inline', $page . '.pdf' );
-               wfResetOutputBuffers();
-               header( 'Content-Type:application/pdf' );
-               header( 'Content-Length: ' . filesize( $fileMetaData['uri'] ) );
-               header( 'Content-Disposition: ' . $contentDisposition );
-               fseek( $this->tempFileHandle, 0 );
-               fpassthru( $this->tempFileHandle );
-               $this->getOutput()->disable();
+
+               $headers = [
+                       'Content-Type:application/pdf',
+                       'Content-Length: ' . filesize( $fileMetaData['uri'] ),
+                       'Content-Disposition: ' . $contentDisposition
+               ];
+
+               StreamFile::stream( $fileMetaData['uri'], $headers );
        }
 
        private function redirectToCollection( $collectionDownloadUrl ) {

-- 
To view, visit https://gerrit.wikimedia.org/r/319863
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie68ebddb5409f69cf3509219796994be0cf1a6b5
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/ElectronPdfService
Gerrit-Branch: master
Gerrit-Owner: Tobias Gritschacher <tobias.gritschac...@wikimedia.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to