aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2023-06-03 10:20:59 -0300
committerJames Almer <jamrial@gmail.com>2023-06-06 09:26:19 -0300
commita5e45988ac6970ef43240b85b5d775f3e25d3156 (patch)
tree471b08f332768e66a02813b8f64d5c1536230558
parentda61ed80fd94c29f9caf16a0e64b86fe34ab72e7 (diff)
downloadffmpeg-a5e45988ac6970ef43240b85b5d775f3e25d3156.tar.gz
avformat/av1dec: don't return EIO when the input file is truncated
There was no problem reading the file, so EIO is not correct. Signed-off-by: James Almer <jamrial@gmail.com>
-rw-r--r--libavformat/av1dec.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/libavformat/av1dec.c b/libavformat/av1dec.c
index 79ad8a9411..501b0cc93f 100644
--- a/libavformat/av1dec.c
+++ b/libavformat/av1dec.c
@@ -134,7 +134,7 @@ static int leb(AVIOContext *pb, uint32_t *len, int eof) {
if (pb->error)
return pb->error;
if (pb->eof_reached)
- return (eof && !i) ? AVERROR_EOF : AVERROR(EIO);
+ return (eof && !i) ? AVERROR_EOF : AVERROR_INVALIDDATA;
more = byte & 0x80;
bits = byte & 0x7f;
if (i <= 3 || (i == 4 && bits < (1 << 4)))
@@ -231,7 +231,7 @@ static int annexb_read_packet(AVFormatContext *s, AVPacket *pkt)
retry:
if (avio_feof(s->pb)) {
if (c->temporal_unit_size || c->frame_unit_size)
- return AVERROR(EIO);
+ return AVERROR_INVALIDDATA;
goto end;
}
@@ -260,7 +260,7 @@ retry:
if (ret < 0)
return ret;
if (ret != obu_unit_size)
- return AVERROR(EIO);
+ return AVERROR_INVALIDDATA;
c->temporal_unit_size -= obu_unit_size + len;
c->frame_unit_size -= obu_unit_size + len;