Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without newline)
This commit is contained in:
Nikita Popov 2020-03-25 10:50:57 +01:00
commit 2b3b7f5cd9
3 changed files with 21 additions and 0 deletions

4
NEWS
View file

@ -29,6 +29,10 @@ PHP NEWS
. Fixed bug #79393 (Null coalescing operator failing with SplFixedArray).
(cmb)
- Standard:
. Fixed bug #79410 (system() swallows last chunk if it is exactly 4095 bytes
without newline). (Christian Schneider)
- Zip:
. Fixed Bug #79296 (ZipArchive::open fails on empty file). (Remi)

View file

@ -159,6 +159,13 @@ PHPAPI int php_exec(int type, char *cmd, zval *array, zval *return_value)
b = buf;
}
if (bufl) {
/* output remaining data in buffer */
if (type == 1 && buf != b) {
PHPWRITE(buf, bufl);
if (php_output_get_level() < 1) {
sapi_flush();
}
}
/* strip trailing whitespaces if we have not done so already */
if ((type == 2 && buf != b) || type != 2) {
l = bufl;

View file

@ -0,0 +1,10 @@
--TEST--
Bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without newline)
--FILE--
<?php
ob_start();
system(getenv('TEST_PHP_EXECUTABLE') . ' -n -r "echo str_repeat(\".\", 4095);"');
var_dump(strlen(ob_get_clean()));
?>
--EXPECT--
int(4095)