From: Michael Wallner Date: Thu, 8 Sep 2005 08:14:44 +0000 (+0000) Subject: - free created bodies at least in detach_all() X-Git-Tag: RELEASE_0_13_0~11 X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=commitdiff_plain;h=a7c9ca5fe4922c1064b3397b61eca6d83cea6cfa - free created bodies at least in detach_all() --- diff --git a/http_request_pool_api.c b/http_request_pool_api.c index b78e354..64224fe 100644 --- a/http_request_pool_api.c +++ b/http_request_pool_api.c @@ -168,11 +168,21 @@ PHP_HTTP_API void _http_request_pool_detach_all(http_request_pool *pool TSRMLS_D for (handle = zend_llist_get_first_ex(&pool->handles, &pos); handle; handle = zend_llist_get_next_ex(&pool->handles, &pos)) { handles[i++] = *handle; } + /* should never happen */ + if (i != count) { + zend_error(E_ERROR, "number of fetched request handles do not match overall count"); + count = i; + } for (i = 0; i < count; ++i) { http_request_pool_detach(pool, handles[i]); } efree(handles); } +#if HTTP_DEBUG_REQPOOLS + fprintf(srderr, "Destroying %d request bodies of pool %p\n", zend_llist_count(&pool->bodies), pool); +#endif + /* free created bodies too */ + zend_llist_clean(&pool->bodies); }