Changeset 18462


Ignore:
Timestamp:
2010/01/01 23:54:47 (14 years ago)
Author:
Seasoft
Message:
  • merge r18409
    • 取得元: version-2_4

【取得元のログメッセージ】

  • #566 CSVアップロードで無限ループが発生する可能性があるソースを修正しました
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/comu-ver2/data/class/pages/admin/products/LC_Page_Admin_Products_UploadCSVCategory.php

    r18234 r18462  
    109109                    // レコード数を得る 
    110110                    $rec_count = $this->lfCSVRecordCount($enc_filepath); 
     111                    if ($rec_count === false) { 
     112                        $err = false; 
     113                        $arrErr['bad_file_pointer'] = "※ 不正なファイルポインタが検出されました"; 
     114                    } 
    111115 
    112116                    $fp = fopen($enc_filepath, "r"); 
     
    362366     * 
    363367     * @param string $file_name ファイルパス 
    364      * @return integer CSV のカウント数 
     368     * @return mixed CSV のカウント数; $file_name が無効な場合は false 
    365369     */ 
    366370    function lfCSVRecordCount($file_name) { 
    367371        $count = 0; 
    368372        $fp = fopen($file_name, "r"); 
    369         while(!feof($fp)) { 
    370             $arrCSV = fgetcsv($fp, CSV_LINE_MAX); 
    371             $count++; 
    372         } 
    373  
     373        if ($fp !== false) { 
     374            while(!feof($fp)) { 
     375                $arrCSV = fgetcsv($fp, CSV_LINE_MAX); 
     376                $count++; 
     377            } 
     378        } else { 
     379            return false; 
     380        } 
    374381        return $count-1; 
    375382    } 
Note: See TracChangeset for help on using the changeset viewer.