From 56ea98734c193381540edd93a52cb456fe59c054 Mon Sep 17 00:00:00 2001 From: Adam Harvey Date: Tue, 14 Sep 2010 10:58:59 +0000 Subject: [PATCH] Fix bug #52827 (cURL leaks handle and causes assertion error (CURLOPT_STDERR)). Patch by Gustavo. --- ext/curl/interface.c | 1 - ext/curl/tests/bug52827.phpt | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 ext/curl/tests/bug52827.phpt diff --git a/ext/curl/interface.c b/ext/curl/interface.c index edb4a30c87..24ff940c73 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -1826,7 +1826,6 @@ static int _php_curl_setopt(php_curl *ch, long option, zval **zvalue, zval *retu } zval_add_ref(zvalue); ch->handlers->std_err = *zvalue; - zend_list_addref(Z_LVAL_PP(zvalue)); } else { php_error_docref(NULL TSRMLS_CC, E_WARNING, "the provided file handle is not writable"); RETVAL_FALSE; diff --git a/ext/curl/tests/bug52827.phpt b/ext/curl/tests/bug52827.phpt new file mode 100644 index 0000000000..85a73fa797 --- /dev/null +++ b/ext/curl/tests/bug52827.phpt @@ -0,0 +1,32 @@ +--TEST-- +Bug #52827 (curl_setopt with CURLOPT_STDERR erroneously increments the resource refcount) +--SKIPIF-- + +--FILE-- +