summaryrefslogtreecommitdiff
path: root/ext/curl/curl.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/curl/curl.c')
-rw-r--r--ext/curl/curl.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/ext/curl/curl.c b/ext/curl/curl.c
index 41f71b0a3a..2413d8b4e7 100644
--- a/ext/curl/curl.c
+++ b/ext/curl/curl.c
@@ -699,7 +699,14 @@ PHP_FUNCTION(curl_setopt)
case CURLOPT_WRITEHEADER:
case CURLOPT_STDERR: {
FILE *fp = NULL;
- ZEND_FETCH_RESOURCE(fp, FILE *, zvalue, -1, "File-Handle", php_file_le_fopen());
+ int type;
+ void * what;
+
+ what = zend_fetch_resource(zvalue TSRMLS_CC, -1, "File-Handle", &type, 1, php_file_le_stream());
+ ZEND_VERIFY_RESOURCE(what);
+
+ if (!php_stream_cast((php_stream*)what, PHP_STREAM_AS_STDIO, (void*)&fp, REPORT_ERRORS))
+ RETURN_FALSE;
if (!fp) {
RETURN_FALSE;
}