mirror of
https://github.com/moparisthebest/curl
synced 2024-12-21 23:58:49 -05:00
multi_runsingle: avoid loop in CURLM_STATE_WAITPROXYCONNECT
Closes #703
This commit is contained in:
parent
d807fbd66d
commit
d7e3942814
@ -1230,17 +1230,19 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
|
||||
/* this is HTTP-specific, but sending CONNECT to a proxy is HTTP... */
|
||||
result = Curl_http_connect(data->easy_conn, &protocol_connect);
|
||||
|
||||
rc = CURLM_CALL_MULTI_PERFORM;
|
||||
if(data->easy_conn->bits.proxy_connect_closed) {
|
||||
rc = CURLM_CALL_MULTI_PERFORM;
|
||||
/* connect back to proxy again */
|
||||
result = CURLE_OK;
|
||||
Curl_done(&data->easy_conn, CURLE_OK, FALSE);
|
||||
multistate(data, CURLM_STATE_CONNECT);
|
||||
}
|
||||
else if(!result) {
|
||||
if(data->easy_conn->tunnel_state[FIRSTSOCKET] == TUNNEL_COMPLETE)
|
||||
if(data->easy_conn->tunnel_state[FIRSTSOCKET] == TUNNEL_COMPLETE) {
|
||||
rc = CURLM_CALL_MULTI_PERFORM;
|
||||
/* initiate protocol connect phase */
|
||||
multistate(data, CURLM_STATE_SENDPROTOCONNECT);
|
||||
}
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user