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 85144807f1b6a9e489eb2c7b9d9cbad529059c1b..260b1f4a89fa065f02a674fc0bf2c4e11d9ffbeb 100644
(file)
--- a/
http_request_api.c
+++ b/
http_request_api.c
@@
-471,12
+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 val;
- SEPARATE_ZVAL(header_val);
- convert_to_string(*header_val);
+ val = **header_val;
+ zval_copy_ctor(&val);
+ INIT_PZVAL(&val);
+ convert_to_string(&val);
- snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL
_PP(header_
val));
+ snprintf(header, 1023, "%s: %s", header_key, Z_STRVAL
(
val));
request->_cache.headers = curl_slist_append(request->_cache.headers, header);
request->_cache.headers = curl_slist_append(request->_cache.headers, header);
+ zval_dtor(&val);
}
/* reset */
}
/* reset */