summaryrefslogtreecommitdiffstats
path: root/pecl_http-upstream.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pecl_http-upstream.patch')
-rw-r--r--pecl_http-upstream.patch46
1 files changed, 46 insertions, 0 deletions
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 <mike@php.net>
+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 <mike@php.net>
+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);