summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--ext/curl/interface.c3
2 files changed, 4 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index 208af93325..164daeb178 100644
--- a/NEWS
+++ b/NEWS
@@ -15,6 +15,7 @@ PHP NEWS
- cURL extension:
. Fixed bug (segfault due to libcurl connection caching). (Pierrick)
+ . Fixed bug #63859 (Memory leak when reusing curl-handle). (Pierrick)
. Fixed bug #63795 (CURL >= 7.28.0 no longer support value 1 for
CURLOPT_SSL_VERIFYHOST). (Pierrick)
. Fixed bug #63352 (Can't enable hostname validation when using curl stream
diff --git a/ext/curl/interface.c b/ext/curl/interface.c
index a23f859946..55102da2af 100644
--- a/ext/curl/interface.c
+++ b/ext/curl/interface.c
@@ -2131,6 +2131,9 @@ string_copy:
return 1;
}
+ if (Z_REFCOUNT_P(ch->clone) <= 1) {
+ zend_llist_clean(&ch->to_free->post);
+ }
zend_llist_add_element(&ch->to_free->post, &first);
error = curl_easy_setopt(ch->cp, CURLOPT_HTTPPOST, first);