From: Michael Wallner Date: Tue, 18 May 2010 07:25:29 +0000 (+0000) Subject: * fixed bug #49819: STDOUT losing data with posix_isatty() X-Git-Tag: php-5.3.3RC1~154 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a1de9f382a338d6a8380a7aafd19771c742a100d;p=php * fixed bug #49819: STDOUT losing data with posix_isatty() --- diff --git a/NEWS b/NEWS index 918a79b0b3..6940c69c88 100644 --- a/NEWS +++ b/NEWS @@ -148,6 +148,7 @@ PHP NEWS - Fixed bug #50358 (Compile failure compiling ext/phar/util.lo). (Felipe) - Fixed bug #49893 (Crash while creating an instance of Zend_Mail_Storage_Pop3). (Dmitry) +- Fixed bug #49819 (STDOUT losing data with posix_isatty()). (Mike) - Fixed bug #49778 (DateInterval::format("%a") is always zero when an interval is created from an ISO string). (Derick) - Fixed bug #49700 (memory leaks in php_date.c if garbage collector is diff --git a/ext/posix/posix.c b/ext/posix/posix.c index f030356fb8..01f8d407fd 100644 --- a/ext/posix/posix.c +++ b/ext/posix/posix.c @@ -703,7 +703,9 @@ static int php_posix_stream_get_fd(zval *zfp, int *fd TSRMLS_DC) /* {{{ */ php_error_docref(NULL TSRMLS_CC, E_WARNING, "expects argument 1 to be a valid stream resource"); return 0; } - if (php_stream_can_cast(stream, PHP_STREAM_AS_FD) == SUCCESS) { + if (php_stream_can_cast(stream, PHP_STREAM_AS_FD_FOR_SELECT) == SUCCESS) { + php_stream_cast(stream, PHP_STREAM_AS_FD_FOR_SELECT, (void*)fd, 0); + } else if (php_stream_can_cast(stream, PHP_STREAM_AS_FD) == SUCCESS) { php_stream_cast(stream, PHP_STREAM_AS_FD, (void*)fd, 0); } else { php_error_docref(NULL TSRMLS_CC, E_WARNING, "could not use stream of type '%s'",