]> granicus.if.org Git - curl/commit
multi: fix request timer management
authorBrad Spencer <bspencer@blackberry.com>
Sat, 29 Jul 2017 14:44:39 +0000 (16:44 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 1 Aug 2017 11:39:38 +0000 (13:39 +0200)
commit164a09368d8a95f4a5c5e4b63420e42d261991f2
tree9484b544f11aa7ce0e051b6cd722b63acb2e05bb
parent53d137d94ac355bd3fa1717141e688d3534f21f7
multi: fix request timer management

There are some bugs in how timers are managed for a single easy handle
that causes the wrong "next timeout" value to be reported to the
application when a new minimum needs to be recomputed and that new
minimum should be an existing timer that isn't currently set for the
easy handle.  When the application drives a set of easy handles via the
`curl_multi_socket_action()` API (for example), it gets told to wait the
wrong amount of time before the next call, which causes requests to
linger for a long time (or, it is my guess, possibly forever).

Bug: https://curl.haxx.se/mail/lib-2017-07/0033.html
lib/multi.c