From c8c183eb62b666b5e9c92ca2cbf13f5464ae3aa9 Mon Sep 17 00:00:00 2001 From: Abyr Valg Date: Wed, 17 Jul 2019 21:46:40 +0300 Subject: Fixed bug #77946 Save multi_info_read() result into easy handle. --- ext/curl/multi.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'ext/curl/multi.c') diff --git a/ext/curl/multi.c b/ext/curl/multi.c index 1d325bc329..f86e08aff4 100644 --- a/ext/curl/multi.c +++ b/ext/curl/multi.c @@ -339,6 +339,7 @@ PHP_FUNCTION(curl_multi_info_read) CURLMsg *tmp_msg; int queued_msgs; zval *zmsgs_in_queue = NULL; + php_curl *ch; ZEND_PARSE_PARAMETERS_START(1, 2) Z_PARAM_RESOURCE(z_mh) @@ -376,6 +377,10 @@ PHP_FUNCTION(curl_multi_info_read) being done in add_assoc_resource */ Z_ADDREF_P(pz_ch); + /* we must save result to be able to read error message */ + ch = (php_curl*)zend_fetch_resource(Z_RES_P(pz_ch), le_curl_name, le_curl); + SAVE_CURL_ERROR(ch, tmp_msg->data.result); + /* add_assoc_resource automatically creates a new zval to wrap the "resource" represented by the current pz_ch */ -- cgit v1.2.1