- provide persistent storage for things curl might use on curl_easy_cleanup
[m6w6/ext-http] / http_request_pool_api.c
index ce1257e4dcb42555e65e3e570e39df1c81e92d4f..e5482b41da4778dc90661b82b11f59c01fd3f262 100644 (file)
@@ -382,9 +382,8 @@ void _http_request_pool_responsehandler(http_request_pool *pool)
                msg = curl_multi_info_read(pool->ch, &remaining);
                if (msg && CURLMSG_DONE == msg->msg) {
                        if (CURLE_OK != msg->data.result) {
-                               http_request *r = NULL;
-                               curl_easy_getinfo(msg->easy_handle, CURLINFO_PRIVATE, &r);
-                               http_error_ex(HE_WARNING, HTTP_E_REQUEST, "%s; %s (%s)", curl_easy_strerror(msg->data.result), r?r->_error:"", r?r->url:"");
+                               http_request_storage *st = http_request_storage_get(msg->easy_handle);
+                               http_error_ex(HE_WARNING, HTTP_E_REQUEST, "%s; %s (%s)", curl_easy_strerror(msg->data.result), st?st->errorbuffer:"", st?st->url:"");
                        }
                        http_request_pool_apply_with_arg(pool, _http_request_pool_apply_responsehandler, msg->easy_handle);
                }