From a1de9f382a338d6a8380a7aafd19771c742a100d Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Tue, 18 May 2010 07:25:29 +0000 Subject: [PATCH] * fixed bug #49819: STDOUT losing data with posix_isatty() --- NEWS | 1 + ext/posix/posix.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) 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'", -- 2.40.0