bug #36380 [Process] Fixed input/output error on PHP 7.4 (mbardelmeijer)
This PR was merged into the 4.4 branch.
Discussion
----------
[Process] Fixed input/output error on PHP 7.4
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix #34945
| License | MIT
| Doc PR |
This PR aims to fix the error from #34945, but i'm unsure if this is the best solution. The issue is that on PHP 7.4 the input/output error may come up.
php.net/manual/en/migration74.incompatible.php#migration74.incompatible.core.fread-fwrite
> fread() and fwrite() will now return FALSE if the operation failed. Previously an empty string or 0 was returned. EAGAIN/EWOULDBLOCK are not considered failures. These functions now also raise a notice on failure, such as when trying to write to a read only file resource.
Commits
-------
b98abde65a
Supress error from fread when reading a unix pipe
This commit is contained in:
commit
f2d4a2910d
@ -118,7 +118,7 @@ class UnixPipes extends AbstractPipes
|
|||||||
$read[$type = array_search($pipe, $this->pipes, true)] = '';
|
$read[$type = array_search($pipe, $this->pipes, true)] = '';
|
||||||
|
|
||||||
do {
|
do {
|
||||||
$data = fread($pipe, self::CHUNK_SIZE);
|
$data = @fread($pipe, self::CHUNK_SIZE);
|
||||||
$read[$type] .= $data;
|
$read[$type] .= $data;
|
||||||
} while (isset($data[0]) && ($close || isset($data[self::CHUNK_SIZE - 1])));
|
} while (isset($data[0]) && ($close || isset($data[self::CHUNK_SIZE - 1])));
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user