From faa808ce8c1c11496a2d35845253d3ba8488fcad Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Wed, 15 Jun 2016 16:08:39 +0200 Subject: [PATCH] return count of still unfinished requests from run callback --- src/php_http_client_curl_user.c | 4 ++++ src/php_http_client_curl_user.h | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/php_http_client_curl_user.c b/src/php_http_client_curl_user.c index a30d666..225ce1c 100644 --- a/src/php_http_client_curl_user.c +++ b/src/php_http_client_curl_user.c @@ -29,6 +29,7 @@ static void php_http_client_curl_user_handler(INTERNAL_FUNCTION_PARAMETERS) long action = 0; php_socket_t fd = CURL_SOCKET_TIMEOUT; php_http_client_object_t *client = NULL; + php_http_client_curl_t *curl; if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS(), "O|rl", &zclient, php_http_client_get_class_entry(), &zstream, &action)) { return; @@ -43,6 +44,9 @@ static void php_http_client_curl_user_handler(INTERNAL_FUNCTION_PARAMETERS) } } php_http_client_curl_loop(client->client, fd, action); + + curl = client->client->ctx; + RETVAL_LONG(curl->unfinished); } static void php_http_client_curl_user_timer(CURLM *multi, long timeout_ms, void *timer_data) diff --git a/src/php_http_client_curl_user.h b/src/php_http_client_curl_user.h index 35f5d6f..39364be 100644 --- a/src/php_http_client_curl_user.h +++ b/src/php_http_client_curl_user.h @@ -50,7 +50,7 @@ interface http\Client\Curl\User * - timeout occurs * - a watched socket needs action * - * @param callable $run callback as function(http\Client $client, resource $socket = null, int $action = http\Client\Curl\User::POLL_NONE) + * @param callable $run callback as function(http\Client $client, resource $socket = null, int $action = http\Client\Curl\User::POLL_NONE):int (returns unfinished requests pending) */ function init(callable $run); -- 2.30.2