Skip to content

Commit

Permalink
Fixed bug #79741
Browse files Browse the repository at this point in the history
  • Loading branch information
nikic committed Jun 26, 2020
1 parent 4a26628 commit 43cd3f6
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 2 deletions.
4 changes: 4 additions & 0 deletions NEWS
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ PHP NEWS
. Fixed bug #79030 (Upgrade apache2handler's php_apache_sapi_get_request_time
to return usec). (Herbert256)

- Curl:
. Fixed bug #79741 (curl_setopt CURLOPT_POSTFIELDS asserts on object with
declared properties). (Nikita)

- FTP:
. Fixed bug #55857 (ftp_size on large files). (cmb)

Expand Down
4 changes: 2 additions & 2 deletions ext/curl/interface.c
Original file line number Diff line number Diff line change
Expand Up @@ -2719,7 +2719,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));
Expand Down Expand Up @@ -2797,7 +2797,7 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{
}
#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) {
Expand Down
16 changes: 16 additions & 0 deletions ext/curl/tests/bug79741.phpt
Original file line number Diff line number Diff line change
@@ -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===

0 comments on commit 43cd3f6

Please sign in to comment.