Bug #79410 [PATCH]: system() swallows last chunk if it is exactly 4095 bytes without newline

From: Date: Wed, 25 Mar 2020 08:23:25 +0000
Subject: Bug #79410 [PATCH]: system() swallows last chunk if it is exactly 4095 bytes without newline
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-226254@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=79410&edit=1

 ID:                 79410
 Patch added by:     cschneid@php.net
 Reported by:        cschneid@php.net
 Summary:            system() swallows last chunk if it is exactly 4095
                     bytes without newline
 Status:             Verified
 Type:               Bug
 Package:            Program Execution
 Operating System:   *
 PHP Version:        Irrelevant
 Block user comment: N
 Private report:     N

 New Comment:

The following patch has been added/updated:

Patch Name: system_4095_bytes.patch
Revision:   1585124605
URL:        https://bugs.php.net/patch-display.php?bug=79410&patch=system_4095_bytes.patch&revision=1585124605


Previous Comments:
------------------------------------------------------------------------
[2020-03-24 23:00:19] cmb@php.net

The following pull request has been associated:

Patch Name: Fix Bug #79410 and add test for it
On GitHub:  https://github.com/php/php-src/pull/5292
Patch:      https://github.com/php/php-src/pull/5292.patch

------------------------------------------------------------------------
[2020-03-23 20:41:35] cschneid@php.net

Description:
------------
When executing a program where the output's last chunk is 4095 bytes then the last chunk is
swallowed.
The script below generates 4095 dots on Linux and counts how many system()'s output contain.
None of the dots reach the output, a patch resolving this issue is attached.
The bug could already be reproduced in 5.3.0, I did not trace it back farther than that.

Test script:
---------------
# Execute command print 4095 dots
php -r 'system("printf .%.0s {1..4095}");'  | wc -c

Expected result:
----------------
4095

Actual result:
--------------
0


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=79410&edit=1


Thread (5 messages)

« previous php.bugs (#226254) next »