aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2010-01-11 23:05:35 +0000
committerDaniel Stenberg <daniel@haxx.se>2010-01-11 23:05:35 +0000
commit2158e234aa155bc60bc6f68fe4578f41e72d998a (patch)
tree0e2a0a16ab04846e0934b29be7c4a79ec1ace1e4
parentcb348a5b1f7e783623f399b3e102a14a8b7b6031 (diff)
After the TCP connect is confirmed in CURLM_STATE_WAITCONNECT and it changes
state, we return CURLM_CALL_MULTI_PERFORM unconditionally then so that we can act faster like in the case the protocol-specific connect doesn't block on anything and we can just persue on the next action immediately. It also then avoids a case where curl_multi_fdset() would return -1.
-rw-r--r--lib/multi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/multi.c b/lib/multi.c
index d7381e7fa..5ccadc2a8 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -1099,14 +1099,14 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
else
#endif
multistate(easy, CURLM_STATE_PROTOCONNECT);
+
}
- else {
+ else
/* after the connect has completed, go WAITDO or DO */
multistate(easy, multi->pipelining_enabled?
CURLM_STATE_WAITDO:CURLM_STATE_DO);
- result = CURLM_CALL_MULTI_PERFORM;
- }
+ result = CURLM_CALL_MULTI_PERFORM;
}
break;