aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 */