mirror of
https://github.com/php/php-src.git
synced 2025-01-10 21:14:37 +08:00
More BC bodges for fgets/fgetss
This commit is contained in:
parent
e8101a6d16
commit
aa08686c85
@ -1129,13 +1129,15 @@ PHPAPI PHP_FUNCTION(fgets)
|
||||
RETURN_NULL();
|
||||
}
|
||||
|
||||
php_stream_from_zval(stream, &zstream);
|
||||
|
||||
if (length > 0) {
|
||||
if (length == 1) {
|
||||
/* For BC reasons, fgets() should only return length-1 bytes. */
|
||||
RETURN_FALSE;
|
||||
} else if (length > 1) {
|
||||
length--;
|
||||
}
|
||||
|
||||
php_stream_from_zval(stream, &zstream);
|
||||
|
||||
buf.v = php_stream_get_line_ex(stream, stream->readbuf_type, NULL_ZSTR, 0, length, &retlen);
|
||||
if (!buf.v) {
|
||||
RETURN_FALSE;
|
||||
@ -1180,7 +1182,7 @@ PHPAPI PHP_FUNCTION(fgetc)
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
/* {{{ proto string fgetss(resource fp [, int length, string allowable_tags]) U
|
||||
/* {{{ proto string fgetss(resource fp [, int lengthish, string allowable_tags]) U
|
||||
Get a line from file pointer and strip HTML tags */
|
||||
PHPAPI PHP_FUNCTION(fgetss)
|
||||
{
|
||||
@ -1194,6 +1196,13 @@ PHPAPI PHP_FUNCTION(fgetss)
|
||||
return;
|
||||
}
|
||||
|
||||
if (length == 1) {
|
||||
/* For BC reasons, fgetss() should only return length-1 bytes. */
|
||||
RETURN_FALSE;
|
||||
} else if (length > 1) {
|
||||
length--;
|
||||
}
|
||||
|
||||
php_stream_from_zval(stream, &zstream);
|
||||
|
||||
if (length > 0) {
|
||||
|
Loading…
Reference in New Issue
Block a user