diff options
Diffstat (limited to 'ext/curl/curl_file.c')
-rw-r--r-- | ext/curl/curl_file.c | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/ext/curl/curl_file.c b/ext/curl/curl_file.c index 7a047feb7f..92378a6c6d 100644 --- a/ext/curl/curl_file.c +++ b/ext/curl/curl_file.c @@ -31,24 +31,24 @@ PHP_CURL_API zend_class_entry *curl_CURLFile_class; static void curlfile_ctor(INTERNAL_FUNCTION_PARAMETERS) { - char *fname = NULL, *mime = NULL, *postname = NULL; - size_t fname_len, mime_len, postname_len; + zend_string *fname, *mime = NULL, *postname = NULL; zval *cf = return_value; - if (zend_parse_parameters(ZEND_NUM_ARGS(), "p|ss", &fname, &fname_len, &mime, &mime_len, &postname, &postname_len) == FAILURE) { - return; - } + ZEND_PARSE_PARAMETERS_START(1,3) + Z_PARAM_PATH_STR(fname) + Z_PARAM_OPTIONAL + Z_PARAM_STR(mime) + Z_PARAM_STR(postname) + ZEND_PARSE_PARAMETERS_END(); - if (fname) { - zend_update_property_string(curl_CURLFile_class, cf, "name", sizeof("name")-1, fname); - } + zend_update_property_string(curl_CURLFile_class, cf, "name", sizeof("name")-1, ZSTR_VAL(fname)); if (mime) { - zend_update_property_string(curl_CURLFile_class, cf, "mime", sizeof("mime")-1, mime); + zend_update_property_string(curl_CURLFile_class, cf, "mime", sizeof("mime")-1, ZSTR_VAL(mime)); } if (postname) { - zend_update_property_string(curl_CURLFile_class, cf, "postname", sizeof("postname")-1, postname); + zend_update_property_string(curl_CURLFile_class, cf, "postname", sizeof("postname")-1, ZSTR_VAL(postname)); } } @@ -70,34 +70,34 @@ PHP_FUNCTION(curl_file_create) } /* }}} */ -static void curlfile_get_property(char *name, INTERNAL_FUNCTION_PARAMETERS) +static void curlfile_get_property(char *name, size_t name_len, INTERNAL_FUNCTION_PARAMETERS) { zval *res, rv; if (zend_parse_parameters_none() == FAILURE) { return; } - res = zend_read_property(curl_CURLFile_class, getThis(), name, strlen(name), 1, &rv); + res = zend_read_property(curl_CURLFile_class, getThis(), name, name_len, 1, &rv); ZVAL_DEREF(res); ZVAL_COPY(return_value, res); } -static void curlfile_set_property(char *name, INTERNAL_FUNCTION_PARAMETERS) +static void curlfile_set_property(char *name, size_t name_len, INTERNAL_FUNCTION_PARAMETERS) { - char *arg = NULL; - size_t arg_len; + zend_string *arg; - if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &arg, &arg_len) == FAILURE) { - return; - } - zend_update_property_string(curl_CURLFile_class, getThis(), name, strlen(name), arg); + ZEND_PARSE_PARAMETERS_START(1,1) + Z_PARAM_STR(arg) + ZEND_PARSE_PARAMETERS_END(); + + zend_update_property_string(curl_CURLFile_class, getThis(), name, name_len, ZSTR_VAL(arg)); } /* {{{ proto string CURLFile::getFilename() Get file name */ ZEND_METHOD(CURLFile, getFilename) { - curlfile_get_property("name", INTERNAL_FUNCTION_PARAM_PASSTHRU); + curlfile_get_property("name", sizeof("name")-1, INTERNAL_FUNCTION_PARAM_PASSTHRU); } /* }}} */ @@ -105,7 +105,7 @@ ZEND_METHOD(CURLFile, getFilename) Get MIME type */ ZEND_METHOD(CURLFile, getMimeType) { - curlfile_get_property("mime", INTERNAL_FUNCTION_PARAM_PASSTHRU); + curlfile_get_property("mime", sizeof("mime")-1, INTERNAL_FUNCTION_PARAM_PASSTHRU); } /* }}} */ @@ -113,7 +113,7 @@ ZEND_METHOD(CURLFile, getMimeType) Get file name for POST */ ZEND_METHOD(CURLFile, getPostFilename) { - curlfile_get_property("postname", INTERNAL_FUNCTION_PARAM_PASSTHRU); + curlfile_get_property("postname", sizeof("postname")-1, INTERNAL_FUNCTION_PARAM_PASSTHRU); } /* }}} */ @@ -121,7 +121,7 @@ ZEND_METHOD(CURLFile, getPostFilename) Set MIME type */ ZEND_METHOD(CURLFile, setMimeType) { - curlfile_set_property("mime", INTERNAL_FUNCTION_PARAM_PASSTHRU); + curlfile_set_property("mime", sizeof("mime")-1, INTERNAL_FUNCTION_PARAM_PASSTHRU); } /* }}} */ @@ -129,7 +129,7 @@ ZEND_METHOD(CURLFile, setMimeType) Set file name for POST */ ZEND_METHOD(CURLFile, setPostFilename) { - curlfile_set_property("postname", INTERNAL_FUNCTION_PARAM_PASSTHRU); + curlfile_set_property("postname", sizeof("postname")-1, INTERNAL_FUNCTION_PARAM_PASSTHRU); } /* }}} */ |