From: Arthur Schiwon Date: Tue, 1 May 2012 18:32:13 +0000 (+0200) Subject: send downloadfile piece by piece. saves RAM and is better suited for large files. X-Git-Tag: v4.0.0beta~109 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=c9eaffd3363f06137fb197138d0b197679085537;p=nextcloud-server.git send downloadfile piece by piece. saves RAM and is better suited for large files. --- diff --git a/lib/files.php b/lib/files.php index a7b83149574..107605fc34e 100644 --- a/lib/files.php +++ b/lib/files.php @@ -119,7 +119,14 @@ class OC_Files { } @ob_end_clean(); if($zip){ - readfile($filename); + $handle=fopen($filename,'r'); + if ($handle) { + $chunkSize = 8*1024;// 1 MB chunks + while (!feof($handle)) { + echo fread($handle, $chunkSize); + flush(); + } + } unlink($filename); }else{ OC_Filesystem::readfile($filename);