projects
/
m6w6
/
ext-http
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
- create another copy of the header zval
[m6w6/ext-http]
/
http_request_api.c
diff --git
a/http_request_api.c
b/http_request_api.c
index c12edb285535aeb880313913be4daf30fb339cc5..260b1f4a89fa065f02a674fc0bf2c4e11d9ffbeb 100644
(file)
--- a/
http_request_api.c
+++ b/
http_request_api.c
@@
-471,14
+471,16
@@
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 **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)
;
+ zval
val
;
- snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL_P(val));
- request->_cache.headers = curl_slist_append(request->_cache.headers, header);
+ val = **header_val;
+ zval_copy_ctor(&val);
+ INIT_PZVAL(&val);
+ convert_to_string(&val);
- if (cpy) {
-
zval_ptr_dtor(&cpy
);
- }
+ snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL(val));
+
request->_cache.headers = curl_slist_append(request->_cache.headers, header
);
+ zval_dtor(&val);
}
/* reset */
}
/* reset */
@@
-523,11
+525,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");
}
/* 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)) {
/* session cookies */
if ((zoption = http_request_option(request, options, "cookiesession", IS_BOOL))) {
if (Z_LVAL_P(zoption)) {