From: Ilia Alshanetsky Date: Thu, 29 Jan 2004 14:35:34 +0000 (+0000) Subject: Fix for a possible crash in fgetcsv(). (Patch by Moriyoshi Koizumi) X-Git-Tag: php-4.3.5RC2~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=697102558fa8afbaa0f554561657946c8a3c6fed;p=php Fix for a possible crash in fgetcsv(). (Patch by Moriyoshi Koizumi) --- diff --git a/ext/standard/file.c b/ext/standard/file.c index a8f660fcd0..5d42adff72 100644 --- a/ext/standard/file.c +++ b/ext/standard/file.c @@ -2408,11 +2408,9 @@ enclosure: e--; } - if (e - s) { - buf2 = erealloc(buf2, buf2_len + (e - s) + 1); - memcpy(buf2 + buf2_len, s, (e - s)); - buf2_len += e - s; - } + buf2 = erealloc(buf2, buf2_len + (e - s) + 1); + memcpy(buf2 + buf2_len, s, (e - s)); + buf2_len += e - s; enclosure_done: _php_fgetcsv_trim_enclosed(buf2, &buf2_len, enclosure); CSV_ADD_ENTRY(buf2, buf2_len, 0); diff --git a/ext/standard/tests/file/fgetcsv.phpt b/ext/standard/tests/file/fgetcsv.phpt index 868212c033..a247c5f73a 100644 --- a/ext/standard/tests/file/fgetcsv.phpt +++ b/ext/standard/tests/file/fgetcsv.phpt @@ -22,7 +22,8 @@ various fgetcsv() functionality tests 'aaa,"bbb "', 'aaa"aaa","bbb"bbb', 'aaa"aaa""",bbb', - 'aaa"\\"a","bbb"' + 'aaa"\\"a","bbb"', + '""' ); $file = dirname(__FILE__) . 'fgetcsv.csv'; @@ -156,3 +157,7 @@ array(2) { [1]=> string(3) "bbb" } +array(1) { + [0]=> + string(0) "" +}