From 0c366c24e5d21ebd375d295b27ffebc6636497f7 Mon Sep 17 00:00:00 2001 From: Sara Golemon Date: Thu, 17 Apr 2003 00:00:34 +0000 Subject: [PATCH] Macro: php_stream_get_from_zval(php_stream *stream, zval **zstream, char *mode, int options, char **opened_path, php_stream_context *context) Z_TYPE_PP(zstream) can be either IS_RESOURCE (An already opened stream) or IS_STRING (a path to a stream to be opened) --- main/php_streams.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/main/php_streams.h b/main/php_streams.h index 21d53976a8..9d06932aab 100755 --- a/main/php_streams.h +++ b/main/php_streams.h @@ -456,6 +456,12 @@ PHPAPI char *php_stream_locate_eol(php_stream *stream, char *buf, size_t buf_len #define php_stream_open_wrapper(path, mode, options, opened) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), NULL STREAMS_CC TSRMLS_CC) #define php_stream_open_wrapper_ex(path, mode, options, opened, context) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), (context) STREAMS_CC TSRMLS_CC) +#define php_stream_get_from_zval(stream, zstream, mode, options, opened, context) \ + if (Z_TYPE_PP((zstream)) == IS_RESOURCE) { \ + php_stream_from_zval((stream), (zstream)); \ + } else (stream) = Z_TYPE_PP((zstream)) == IS_STRING ? \ + php_stream_open_wrapper_ex(Z_STRVAL_PP((zstream)), (mode), (options), (opened), (context)) : NULL + /* pushes an error message onto the stack for a wrapper instance */ PHPAPI void php_stream_wrapper_log_error(php_stream_wrapper *wrapper, int options TSRMLS_DC, const char *fmt, ...); -- 2.40.0