X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=http_requestpool_object.c;h=69c3f9616a0ade832514f9e38e153d90d61c2655;hb=6aca56d611a22eb559098f3c02c31634a6f9ff9f;hp=665a65ccbe27e2036b6ba89defd3ab39dfd7fef9;hpb=eae2e0b6f3ec09658c4e5ea54662a2221890fed7;p=m6w6%2Fext-http diff --git a/http_requestpool_object.c b/http_requestpool_object.c index 665a65c..69c3f96 100644 --- a/http_requestpool_object.c +++ b/http_requestpool_object.c @@ -194,15 +194,13 @@ PHP_METHOD(HttpRequestPool, __construct) for (i = 0; i < argc; ++i) { if (Z_TYPE_PP(argv[i]) == IS_OBJECT && instanceof_function(Z_OBJCE_PP(argv[i]), http_request_object_ce TSRMLS_CC)) { - http_request_pool_try { - http_request_pool_attach(&obj->pool, *(argv[i])); - } http_request_pool_catch(); + http_request_pool_attach(&obj->pool, *(argv[i])); } } - http_request_pool_final(); } efree(argv); SET_EH_NORMAL(); + http_final(HTTP_EX_CE(request_pool)); } /* }}} */ @@ -311,6 +309,9 @@ PHP_METHOD(HttpRequestPool, send) SET_EH_THROW_HTTP(); status = http_request_pool_send(&obj->pool); SET_EH_NORMAL(); + + /* rethrow as HttpRequestPoolException */ + http_final(HTTP_EX_CE(request_pool)); RETURN_SUCCESS(status); } @@ -353,7 +354,7 @@ PHP_METHOD(HttpRequestPool, socketPerform) NO_ARGS; - if (0 < http_request_pool_perform(&obj->pool, 1)) { + if (0 < http_request_pool_perform(&obj->pool)) { RETURN_TRUE; } else { RETURN_FALSE;