Re: #19746 (fwd)
| From: | Ilia A. | Date: | Fri, 04 Oct 2002 19:50:13 +0000 |
| Subject: | Re: #19746 (fwd) | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-89028@lists.php.net to get a copy of this message | ||
Would this be a more appropriate solution to the problem in that case?
This forces a non-blocking mode on all non static streams such as
FTP/HTTP/std*.
Ilia
On October 4, 2002 03:11 pm, Sascha Schumann wrote:
> Iliaa,
>
> looking at a syscall trace from PHP 4.2, the difference in
> handling php://std* is that 4.2 uses non-blocking mode by
> default, while streams block by default.
>
> 4.2: fcntl64(0x3, 0x3, 0x8050fe5, 0) = 2
>
> 4.3: fcntl64(0x3, 0x3, 0xbffff7f4, 0x3) = 2
>
> E.g.
>
> $fp = fopen("php://stdin", "r");
> stream_set_blocking($fp, false);
> print fgets($fp, 500);
>
> works as in PHP 4.2 without the set_blocking call.
>
> Wez, any idea on what is causing this?
>
> - Sascha
Attachment: [text/x-diff] php_fopen_wrapper.c.patch
Attachment: [text/x-diff] php_fopen_wrapper.c.patch