X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=http_request_api.c;h=85144807f1b6a9e489eb2c7b9d9cbad529059c1b;hb=8fa713be4960d51958523429ee0e7dfca6d017fb;hp=c12edb285535aeb880313913be4daf30fb339cc5;hpb=40e535bf0ccece715c2ccc640148fab5ebd9a053;p=m6w6%2Fext-http diff --git a/http_request_api.c b/http_request_api.c index c12edb2..8514480 100644 --- a/http_request_api.c +++ b/http_request_api.c @@ -471,14 +471,12 @@ PHP_HTTP_API STATUS _http_request_prepare(http_request *request, HashTable *opti zval **header_val; if (SUCCESS == zend_hash_get_current_data_ex(Z_ARRVAL_P(zoption), (void **) &header_val, &pos)) { char header[1024] = {0}; - zval *cpy, *val = convert_to_type_ex(IS_STRING, *header_val, &cpy); - snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL_P(val)); - request->_cache.headers = curl_slist_append(request->_cache.headers, header); + SEPARATE_ZVAL(header_val); + convert_to_string(*header_val); - if (cpy) { - zval_ptr_dtor(&cpy); - } + snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL_PP(header_val)); + request->_cache.headers = curl_slist_append(request->_cache.headers, header); } /* reset */ @@ -523,11 +521,13 @@ PHP_HTTP_API STATUS _http_request_prepare(http_request *request, HashTable *opti } } +#if LIBCURL_VERSIONNUM >= 0x070f01 /* reset cookies */ if ((zoption = http_request_option(request, options, "resetcookies", IS_BOOL)) && Z_LVAL_P(zoption)) { HTTP_CURL_OPT(COOKIELIST, "ALL"); } - +#endif + /* session cookies */ if ((zoption = http_request_option(request, options, "cookiesession", IS_BOOL))) { if (Z_LVAL_P(zoption)) {