1
0
mirror of https://github.com/moparisthebest/curl synced 2024-08-13 17:03:50 -04:00

multi: if Curl_readwrite sets 'comeback' use expire, not loop

Otherwise, a very fast single transfer ricks starving out other
concurrent transfers.

Closes #4927
This commit is contained in:
Daniel Stenberg 2020-02-14 16:54:06 +01:00
parent c188391a9f
commit d60b1b37a1
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2

View File

@ -2191,8 +2191,13 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
}
}
}
else if(comeback)
rc = CURLM_CALL_MULTI_PERFORM;
else if(comeback) {
/* This avoids CURLM_CALL_MULTI_PERFORM so that a very fast transfer
won't get stuck on this transfer at the expense of other concurrent
transfers */
Curl_expire(data, 0, EXPIRE_RUN_NOW);
rc = CURLM_OK;
}
break;
}