Return if the box is empty at the point the arrays should start.
Signed-off-by: James Almer <[email protected]>
---
libavformat/mov.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 2c8be51063..05afda4169 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -8435,9 +8435,15 @@ static int mov_read_lhvc(MOVContext *c, AVIOContext *pb,
MOVAtom atom)
num_arrays = buf[5];
old_size = st->codecpar->extradata_size;
- atom.size -= 8 /* account for mov_realloc_extradata offseting */
- + 6 /* lhvC bytes before the arrays*/;
+ atom.size -= 6; /* lhvC bytes before the arrays*/
+ if (!atom.size) {
+ av_free(buf);
+ av_log(c->fc, AV_LOG_WARNING, "empty lhvC atom\n");
+ return 0;
+ }
+
+ st->codecpar->extradata_size -= 8; /* account for mov_realloc_extradata
offseting */
ret = mov_realloc_extradata(st->codecpar, atom);
if (ret < 0) {
av_free(buf);
--
2.48.1
_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".