From 6e91d405be3c8a1ded025498085e0e606e337030 Mon Sep 17 00:00:00 2001 From: Pierre-Anthony Lemieux Date: Thu, 25 Aug 2022 20:21:53 -0700 Subject: [PATCH] avformat/imfdec: check if Asset/Id exists before trying to read it Fixes Coverity issue #1512406 Signed-off-by: Andreas Rheinhardt --- libavformat/imfdec.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/imfdec.c b/libavformat/imfdec.c index 5bbe7a53f8..fde91a6419 100644 --- a/libavformat/imfdec.c +++ b/libavformat/imfdec.c @@ -233,7 +233,12 @@ static int parse_imf_asset_map_from_xml_dom(AVFormatContext *s, asset = &(asset_map->assets[asset_map->asset_count]); - if (ff_imf_xml_read_uuid(ff_imf_xml_get_child_element_by_name(asset_element, "Id"), asset->uuid)) { + if (!(node = ff_imf_xml_get_child_element_by_name(asset_element, "Id"))) { + av_log(s, AV_LOG_ERROR, "Unable to parse asset map XML - missing Id node\n"); + return AVERROR_INVALIDDATA; + } + + if (ff_imf_xml_read_uuid(node, asset->uuid)) { av_log(s, AV_LOG_ERROR, "Could not parse UUID from asset in asset map.\n"); return AVERROR_INVALIDDATA; }