diff options
author | Daniel Stenberg <daniel@haxx.se> | 2018-03-16 12:03:52 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-03-16 23:41:55 +0100 |
commit | 2404aa080e1cc62634b44091f58737d2c618e361 (patch) | |
tree | 0d5087c816b3a62d0b124f6c19cf8ecc6a31367f /lib/multi.c | |
parent | 9434194be8cfc896b416ea17d1867725990f8bc9 (diff) | |
download | curl-2404aa080e1cc62634b44091f58737d2c618e361.tar.gz |
pause: when changing pause state, update socket state
Especially unpausing a transfer might have to move the socket back to the
"currently used sockets" hash to get monitored. Otherwise it would never get
any more data and get stuck. Easily triggered with pausing using the
multi_socket API.
Reported-by: Philip Prindeville
Bug: https://curl.haxx.se/mail/lib-2018-03/0048.html
Fixes #2393
Closes #2391
Diffstat (limited to 'lib/multi.c')
-rw-r--r-- | lib/multi.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/multi.c b/lib/multi.c index 69df90288..2f139ab37 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -2421,6 +2421,12 @@ static void singlesocket(struct Curl_multi *multi, data->numsocks = num; } +void Curl_updatesocket(struct Curl_easy *data) +{ + singlesocket(data->multi, data); +} + + /* * Curl_multi_closed() * |