aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2008-01-16 21:33:52 +0000
committerDaniel Stenberg <daniel@haxx.se>2008-01-16 21:33:52 +0000
commitddaa78f08b394f1c7cd1488ce24aee1412679c29 (patch)
treeb96ef6ae89006301dc682698a6b1d39b33952e05
parent3d55877764c787a3ba14525b8a3b2f71b8cc40eb (diff)
Dmitry Kurochkin's additional pipelining bugfix
-rw-r--r--lib/multi.c6
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 */