From 2276bcc52acf224da38eadb8068a8535260678e0 Mon Sep 17 00:00:00 2001 From: James Almer Date: Mon, 19 Jun 2023 23:25:43 -0300 Subject: [PATCH] avformat/evcdec: ensure there are enough bytes to seekback Signed-off-by: James Almer --- libavformat/evcdec.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/evcdec.c b/libavformat/evcdec.c index 890babd3cb..9c4969e78f 100644 --- a/libavformat/evcdec.c +++ b/libavformat/evcdec.c @@ -30,6 +30,7 @@ #include "rawdec.h" #include "avformat.h" +#include "avio_internal.h" #include "internal.h" @@ -192,8 +193,12 @@ static int evc_read_packet(AVFormatContext *s, AVPacket *pkt) } while(!au_end_found) { - uint8_t buf[EVC_NALU_LENGTH_PREFIX_SIZE]; + + ret = ffio_ensure_seekback(s->pb, EVC_NALU_LENGTH_PREFIX_SIZE); + if (ret < 0) + return ret; + ret = avio_read(s->pb, (unsigned char *)&buf, EVC_NALU_LENGTH_PREFIX_SIZE); if (ret < 0) { av_packet_unref(pkt);