}
/* }}} */
-/* {{{ stderr writer if not PHP_OUTPUT_ACTIVATED */
+/* {{{ stderr/stdout writer if not PHP_OUTPUT_ACTIVATED */
+static int php_output_stdout(const char *str, size_t str_len)
+{
+ fwrite(str, 1, str_len, stdout);
+ return str_len;
+}
static int php_output_stderr(const char *str, size_t str_len)
{
fwrite(str, 1, str_len, stderr);
#endif
return str_len;
}
+static int (*php_output_direct)(const char *str, size_t str_len) = php_output_stderr;
/* }}} */
/* {{{ void php_output_startup(void)
zend_hash_init(&php_output_handler_aliases, 0, NULL, NULL, 1);
zend_hash_init(&php_output_handler_conflicts, 0, NULL, NULL, 1);
zend_hash_init(&php_output_handler_reverse_conflicts, 0, NULL, (void (*)(void *)) zend_hash_destroy, 1);
+ php_output_direct = php_output_stdout;
}
/* }}} */
* Destroy module globals and the conflict and reverse conflict hash tables */
PHPAPI void php_output_shutdown(void)
{
+ php_output_direct = php_output_stderr;
zend_hash_destroy(&php_output_handler_aliases);
zend_hash_destroy(&php_output_handler_conflicts);
zend_hash_destroy(&php_output_handler_reverse_conflicts);
if (OG(flags) & PHP_OUTPUT_ACTIVATED) {
return sapi_module.ub_write(str, len TSRMLS_CC);
}
- return php_output_stderr(str, len);
+ return php_output_direct(str, len);
}
/* }}} */
php_output_op(PHP_OUTPUT_HANDLER_WRITE, str, len TSRMLS_CC);
return (int) len;
}
- return php_output_stderr(str, len);
+ return php_output_direct(str, len);
}
/* }}} */