diff options
author | Marton Balint <cus@passwd.hu> | 2020-02-15 00:30:29 +0100 |
---|---|---|
committer | Marton Balint <cus@passwd.hu> | 2020-02-24 00:02:46 +0100 |
commit | 449e984192d94ac40713e9217871c884657dc79d (patch) | |
tree | dcb438f2bd76f66eece2bdf6d8aeeea277f54b82 /libavformat | |
parent | 7cc7680a802c1eee9e334a0653f2347e9c0922a4 (diff) | |
download | ffmpeg-449e984192d94ac40713e9217871c884657dc79d.tar.gz |
avformat/libsrt: use listen_timeout for listening
Signed-off-by: Marton Balint <cus@passwd.hu>
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/libsrt.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/libavformat/libsrt.c b/libavformat/libsrt.c index fe3e7d4207..f24ce46831 100644 --- a/libavformat/libsrt.c +++ b/libavformat/libsrt.c @@ -227,14 +227,9 @@ static int libsrt_listen(int eid, int fd, const struct sockaddr *addr, socklen_t if (ret) return libsrt_neterrno(h); - while ((ret = libsrt_network_wait_fd_timeout(h, eid, fd, 1, timeout, &h->interrupt_callback))) { - switch (ret) { - case AVERROR(ETIMEDOUT): - continue; - default: - return ret; - } - } + ret = libsrt_network_wait_fd_timeout(h, eid, fd, 1, timeout, &h->interrupt_callback); + if (ret < 0) + return ret; ret = srt_accept(fd, NULL, NULL); if (ret < 0) @@ -434,7 +429,7 @@ static int libsrt_setup(URLContext *h, const char *uri, int flags) if (s->mode == SRT_MODE_LISTENER) { // multi-client - if ((ret = libsrt_listen(s->eid, fd, cur_ai->ai_addr, cur_ai->ai_addrlen, h, open_timeout)) < 0) + if ((ret = libsrt_listen(s->eid, fd, cur_ai->ai_addr, cur_ai->ai_addrlen, h, s->listen_timeout)) < 0) goto fail1; fd = ret; } else { |