diff options
author | Daniel Stenberg <daniel@haxx.se> | 2008-01-16 21:33:52 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2008-01-16 21:33:52 +0000 |
commit | ddaa78f08b394f1c7cd1488ce24aee1412679c29 (patch) | |
tree | b96ef6ae89006301dc682698a6b1d39b33952e05 | |
parent | 3d55877764c787a3ba14525b8a3b2f71b8cc40eb (diff) |
Dmitry Kurochkin's additional pipelining bugfix
-rw-r--r-- | lib/multi.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/multi.c b/lib/multi.c index 98f35bff5..fef632adf 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -944,8 +944,12 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi, easy->result = addHandleToSendOrPendPipeline(easy->easy_handle, easy->easy_conn); if(CURLE_OK == easy->result) { - if (easy->easy_handle->state.is_in_pipeline) + if (easy->easy_handle->state.is_in_pipeline) { multistate(easy, CURLM_STATE_WAITDO); + if(isHandleAtHead(easy->easy_handle, + easy->easy_conn->send_pipe)) + result = CURLM_CALL_MULTI_PERFORM; + } else { if(async) /* We're now waiting for an asynchronous name lookup */ |