From 67f39b32db2b68eabcc51519a2430687439f1cf5 Mon Sep 17 00:00:00 2001 From: Marton Balint Date: Tue, 14 Jan 2020 18:53:45 +0100 Subject: [PATCH] avformat/udp: properly use return value of pthread_cond_timedwait Signed-off-by: Marton Balint --- libavformat/udp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/udp.c b/libavformat/udp.c index f5f636e1af..7e59d51cc6 100644 --- a/libavformat/udp.c +++ b/libavformat/udp.c @@ -978,9 +978,10 @@ static int udp_read(URLContext *h, uint8_t *buf, int size) int64_t t = av_gettime() + 100000; struct timespec tv = { .tv_sec = t / 1000000, .tv_nsec = (t % 1000000) * 1000 }; - if (pthread_cond_timedwait(&s->cond, &s->mutex, &tv) < 0) { + int err = pthread_cond_timedwait(&s->cond, &s->mutex, &tv); + if (err) { pthread_mutex_unlock(&s->mutex); - return AVERROR(errno == ETIMEDOUT ? EAGAIN : errno); + return AVERROR(err == ETIMEDOUT ? EAGAIN : err); } nonblock = 1; }