vlc | branch: master | Rémi Denis-Courmont <r...@remlab.net> | Tue Nov 7 18:54:37 2017 +0200| [858e517febcdfbce9aba777261cb97827e45473e] | committer: Rémi Denis-Courmont
tcp: simplify poll timeout This is the same logic as the TLS code now. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=858e517febcdfbce9aba777261cb97827e45473e --- src/network/tcp.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/network/tcp.c b/src/network/tcp.c index 01e80844d5..f03a716899 100644 --- a/src/network/tcp.c +++ b/src/network/tcp.c @@ -165,26 +165,19 @@ int net_Connect( vlc_object_t *p_this, const char *psz_host, int i_port, ufd.fd = fd; ufd.events = POLLOUT; - if (timeout > 0) - deadline = mdate() + timeout; + deadline = mdate() + timeout; do { - int ms = -1; + mtime_t now = mdate(); if (vlc_killed()) goto next_ai; - if (deadline != VLC_TS_INVALID) - { - ms = (deadline - mdate()) / (CLOCK_FREQ / 1000); - if (ms < 0) - ms = 0; - if (ms > INT_MAX) - ms = INT_MAX; - } + if (now > deadline) + now = deadline; - val = vlc_poll_i11e(&ufd, 1, ms); + val = vlc_poll_i11e(&ufd, 1, (deadline - now) / 1000); } while (val == -1 && errno == EINTR); _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits