From 34fd21120d8672357293cb83d8c9b770850db516 Mon Sep 17 00:00:00 2001 From: Andrey Utkin Date: Thu, 11 Jul 2013 00:19:05 +0300 Subject: [PATCH] retry_transfer_wrapper(): check for interrupt before operation Signed-off-by: Michael Niedermayer --- libavformat/avio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/avio.c b/libavformat/avio.c index 5916e46a2e..2c7a35eced 100644 --- a/libavformat/avio.c +++ b/libavformat/avio.c @@ -273,6 +273,8 @@ static inline int retry_transfer_wrapper(URLContext *h, unsigned char *buf, int len = 0; while (len < size_min) { + if (ff_check_interrupt(&h->interrupt_callback)) + return AVERROR_EXIT; ret = transfer_func(h, buf+len, size-len); if (ret == AVERROR(EINTR)) continue; @@ -296,8 +298,6 @@ static inline int retry_transfer_wrapper(URLContext *h, unsigned char *buf, int if (ret) fast_retries = FFMAX(fast_retries, 2); len += ret; - if (len < size && ff_check_interrupt(&h->interrupt_callback)) - return AVERROR_EXIT; } return len; }