From 810a61bdf8c2eb3a879b983956dbbdede8417e7a Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 25 Feb 2022 09:10:08 +0100 Subject: add upstream patch for recent libcurl --- pecl_http-upstream.patch | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 pecl_http-upstream.patch (limited to 'pecl_http-upstream.patch') diff --git a/pecl_http-upstream.patch b/pecl_http-upstream.patch new file mode 100644 index 0000000..452fedb --- /dev/null +++ b/pecl_http-upstream.patch @@ -0,0 +1,46 @@ +From e7b1f15da7b31de77e75cd81c2b2fc8816200f27 Mon Sep 17 00:00:00 2001 +From: Michael Wallner +Date: Mon, 21 Feb 2022 11:04:09 +0100 +Subject: [PATCH] fix recursive calls to curl_multi API from the user handler + +--- + src/php_http_client_curl_user.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/src/php_http_client_curl_user.c b/src/php_http_client_curl_user.c +index 1f69a51..95ea6f5 100644 +--- a/src/php_http_client_curl_user.c ++++ b/src/php_http_client_curl_user.c +@@ -57,9 +57,7 @@ static void php_http_client_curl_user_timer(CURLM *multi, long timeout_ms, void + fprintf(stderr, "\ntimer <- timeout_ms: %ld\n", timeout_ms); + #endif + +- if (timeout_ms <= 0) { +- php_http_client_curl_loop(context->client, CURL_SOCKET_TIMEOUT, 0); +- } else { ++ if (timeout_ms >= 0) { + zval args[1], *ztimeout = &args[0]; + + ZVAL_LONG(ztimeout, timeout_ms); +From 9fb1c51406519a06bf58589dc8e1c80b82beee09 Mon Sep 17 00:00:00 2001 +From: Michael Wallner +Date: Mon, 21 Feb 2022 11:06:19 +0100 +Subject: [PATCH] fix recursive calls to curl_multi API from the event handler + +--- + src/php_http_client_curl_event.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/src/php_http_client_curl_event.c b/src/php_http_client_curl_event.c +index b8db1b2..2e663ed 100644 +--- a/src/php_http_client_curl_event.c ++++ b/src/php_http_client_curl_event.c +@@ -97,8 +97,6 @@ static void php_http_client_curl_event_timer(CURLM *multi, long timeout_ms, void + } + break; + case 0: +- php_http_client_curl_event_handler(context, CURL_SOCKET_TIMEOUT, 0); +- break; + default: + if (!event_initialized(context->timeout)) { + event_assign(context->timeout, context->evbase, CURL_SOCKET_TIMEOUT, 0, php_http_client_curl_event_timeout_callback, context); -- cgit