mirror of
https://github.com/php/php-src.git
synced 2024-12-02 22:34:55 +08:00
d59aac58b3
The php_stream_read() and php_stream_write() functions now return an ssize_t value, with negative results indicating failure. Functions like fread() and fwrite() will return false in that case. As a special case, EWOULDBLOCK and EAGAIN on non-blocking streams should not be regarded as error conditions, and be reported as successful zero-length reads/writes instead. The handling of EINTR remains unclear and is internally inconsistent (e.g. some code-paths will automatically retry on EINTR, while some won't). I'm landing this now to make sure the stream wrapper ops API changes make it into 7.4 -- however, if the user-facing changes turn out to be problematic we have the option of clamping negative returns to zero in php_stream_read() and php_stream_write() to restore the old behavior in a relatively non-intrusive manner. |
||
---|---|---|
.. | ||
tests | ||
config.m4 | ||
config.w32 | ||
CREDITS | ||
php_encoding.c | ||
php_encoding.h | ||
php_http.c | ||
php_http.h | ||
php_packet_soap.c | ||
php_packet_soap.h | ||
php_schema.c | ||
php_schema.h | ||
php_sdl.c | ||
php_sdl.h | ||
php_soap.h | ||
php_xml.c | ||
php_xml.h | ||
soap.c |