avformat/imfdec: check if Asset/Id exists before trying to read it

Fixes Coverity issue #1512406

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
pull/388/head
Pierre-Anthony Lemieux 3 years ago committed by Andreas Rheinhardt
parent db85e01fd7
commit 6e91d405be
  1. 7
      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;
}

Loading…
Cancel
Save