From: Ilia Alshanetsky Date: Fri, 2 Jan 2004 00:57:23 +0000 (+0000) Subject: Fixed bug #26752 (Silent unterminated loop when length parameter for X-Git-Tag: php_ibase_before_split~412 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6f7fe1dfa05bc3d23574de48d12badd2f46ee89e;p=php Fixed bug #26752 (Silent unterminated loop when length parameter for fgets(), fread() and fgetss() is 0). --- diff --git a/ext/standard/file.c b/ext/standard/file.c index 27c2455851..582023c30a 100644 --- a/ext/standard/file.c +++ b/ext/standard/file.c @@ -919,8 +919,8 @@ PHPAPI PHP_FUNCTION(fgets) convert_to_long_ex(arg2); len = Z_LVAL_PP(arg2); - if (len < 0) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter may not be negative"); + if (len <= 0) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter must be greater then 0."); RETURN_FALSE; } @@ -1026,8 +1026,8 @@ PHPAPI PHP_FUNCTION(fgetss) if (bytes != NULL) { convert_to_long_ex(bytes); - if (Z_LVAL_PP(bytes) < 0) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter may not be negative"); + if (Z_LVAL_PP(bytes) <= 0) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter must be greater then 0."); RETURN_FALSE; } @@ -1640,8 +1640,8 @@ PHPAPI PHP_FUNCTION(fread) convert_to_long_ex(arg2); len = Z_LVAL_PP(arg2); - if (len < 0) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter may not be negative"); + if (len <= 0) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter must be greater then 0."); RETURN_FALSE; }