diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2020-06-26 12:29:23 +0200 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-06-26 12:29:23 +0200 |
commit | 978cdb736a2a43c9e1473b14aa4a1f62ed96f820 (patch) | |
tree | f0f7e617a0543f6201c8852c1dd0abd1151ed5ee | |
parent | c5caa051711319f78b2b8b116dbc0186a73049a0 (diff) | |
parent | 43cd3f68143eb6b35e19605855dac45db4007fc1 (diff) | |
download | php-git-978cdb736a2a43c9e1473b14aa4a1f62ed96f820.tar.gz |
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed bug #79741
-rw-r--r-- | ext/curl/interface.c | 4 | ||||
-rw-r--r-- | ext/curl/tests/bug79741.phpt | 16 |
2 files changed, 18 insertions, 2 deletions
diff --git a/ext/curl/interface.c b/ext/curl/interface.c index 7d57df8f78..01742ba3e5 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -2183,7 +2183,7 @@ static inline int build_mime_structure_from_hash(php_curl *ch, zval *zpostfields } #endif - ZEND_HASH_FOREACH_KEY_VAL(postfields, num_key, string_key, current) { + ZEND_HASH_FOREACH_KEY_VAL_IND(postfields, num_key, string_key, current) { zend_string *postval, *tmp_postval; /* Pretend we have a string_key here */ if (!string_key) { @@ -2919,7 +2919,7 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ return FAILURE; } - ZEND_HASH_FOREACH_VAL(ph, current) { + ZEND_HASH_FOREACH_VAL_IND(ph, current) { ZVAL_DEREF(current); val = zval_get_tmp_string(current, &tmp_val); slist = curl_slist_append(slist, ZSTR_VAL(val)); diff --git a/ext/curl/tests/bug79741.phpt b/ext/curl/tests/bug79741.phpt new file mode 100644 index 0000000000..17c3f57e04 --- /dev/null +++ b/ext/curl/tests/bug79741.phpt @@ -0,0 +1,16 @@ +--TEST-- +Bug #79741: curl_setopt CURLOPT_POSTFIELDS asserts on object with declared properties +--FILE-- +<?php + +class Test { + public $prop = "value"; +} + +$ch = curl_init(); +curl_setopt($ch, CURLOPT_POSTFIELDS, new Test); + +?> +===DONE=== +--EXPECT-- +===DONE=== |