diff mbox series

[FFmpeg-devel] avformat/http: return error when error occurs during gzip inflating

Message ID 20240418090017.60314-1-renw1991@gmail.com
State New
Headers show
Series [FFmpeg-devel] avformat/http: return error when error occurs during gzip inflating | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

renwei April 18, 2024, 9 a.m. UTC
when there is error in http gizp data, return 0 will cause endless
and meanningless loop in retry_transfer_wrapper function.
---
 libavformat/http.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/libavformat/http.c b/libavformat/http.c
index ed20359552..6e712383c1 100644
--- a/libavformat/http.c
+++ b/libavformat/http.c
@@ -1657,10 +1657,11 @@  static int http_buf_read_compressed(URLContext *h, uint8_t *buf, int size)
     s->inflate_stream.next_out  = buf;
 
     ret = inflate(&s->inflate_stream, Z_SYNC_FLUSH);
-    if (ret != Z_OK && ret != Z_STREAM_END)
-        av_log(h, AV_LOG_WARNING, "inflate return value: %d, %s\n",
+    if (ret != Z_OK && ret != Z_STREAM_END) {
+         av_log(h, AV_LOG_WARNING, "inflate return value: %d, %s\n",
                ret, s->inflate_stream.msg);
-
+         return AVERROR(EIO);
+    }
     return size - s->inflate_stream.avail_out;
 }
 #endif /* CONFIG_ZLIB */