From 3f81cc8c94586ccd500827b606c1eabfb6e2dadb Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Thu, 20 Jun 2019 01:45:00 +0200 Subject: [PATCH] av1_metadata: Error out if fragment is empty If the fragment is empty after parsing (i.e. it contains no OBUs), then the check for the type of the fragment's first OBU is nonsensical; so error out in this case just as h264_metadata and hevc_metadata do. Signed-off-by: Andreas Rheinhardt --- libavcodec/av1_metadata_bsf.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/av1_metadata_bsf.c b/libavcodec/av1_metadata_bsf.c index 842b80c201..bb2ca2075b 100644 --- a/libavcodec/av1_metadata_bsf.c +++ b/libavcodec/av1_metadata_bsf.c @@ -133,6 +133,12 @@ static int av1_metadata_filter(AVBSFContext *bsf, AVPacket *pkt) goto fail; } + if (frag->nb_units == 0) { + av_log(bsf, AV_LOG_ERROR, "No OBU in packet.\n"); + err = AVERROR_INVALIDDATA; + goto fail; + } + for (i = 0; i < frag->nb_units; i++) { if (frag->units[i].type == AV1_OBU_SEQUENCE_HEADER) { obu = frag->units[i].content;