Changeset 2283 for branches/2.0


Ignore:
Timestamp:
03/17/10 14:20:15 (14 years ago)
Author:
niltonneto
Message:

Ticket #968 - Corrigido problema ao exportar pastas grandes (formato zip).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.0/expressoMail1_2/inc/gotodownload.php

    r2133 r2283  
    1 <? 
     1<?php 
    22if(!isset($GLOBALS['phpgw_info'])){ 
    33        $GLOBALS['phpgw_info']['flags'] = array( 
     
    152152                if ($strFileType == ".ndl") 
    153153                        $ContentType = "application/vnd.lotus-notes"; 
     154                if ($strFileType == ".eml") 
     155                        $ContentType = "text/plain"; 
    154156 
    155157                header ("Content-Type: $ContentType"); 
     
    169171                        if (preg_match("#^".ini_get('session.save_path')."/(".$GLOBALS['phpgw']->session->sessionid."/)*[A-z]+_".$GLOBALS['phpgw']->session->sessionid."[A-z0-9]*(\.[A-z]{3,4})?$#",$strFileName)) 
    170172                        { 
    171                                 readfile($strFileName); 
     173                                //avoid stuck request 
     174                                session_write_close(); 
     175 
     176                                //reset time limit for big files 
     177                                set_time_limit(0); 
     178 
     179                                if ($fp = fopen ($strFileName, 'rb')) 
     180                                { 
     181                                        $bufferSize=1024; 
     182                                        for ($i=$bufferSize; $i<=filesize($strFileName); $i+=$bufferSize) 
     183                                        { 
     184                                                echo fread($fp, $i); 
     185                                                flush(); 
     186                                                ob_end_flush(); 
     187                                        } 
     188                                        fclose ($fp); 
     189                                } 
     190                                //readfile($strFileName); 
    172191                                exec("rm -f ".escapeshellcmd(escapeshellarg($strFileName))); 
    173192                        } 
     193                        else  
     194                                if (preg_match("#^".dirname( __FILE__ ) . '/../tmpLclAtt'."/source_#",$strFileName)) { 
     195                                        readfile($strFileName); 
     196                                } 
    174197        } 
    175198?> 
Note: See TracChangeset for help on using the changeset viewer.