Message ID | 20220826032153.29482-1-pal@sandflow.com |
---|---|
State | Accepted |
Commit | 6e91d405be3c8a1ded025498085e0e606e337030 |
Headers | show |
Series | [FFmpeg-devel,v1] avformat/imfdec: check if Asset/Id exists before trying to read it | expand |
Ping. This fixes Coverity issue #1512406. On Thu, Aug 25, 2022 at 8:22 PM <pal@sandflow.com> wrote: > > From: Pierre-Anthony Lemieux <pal@palemieux.com> > > Fixes Coverity issue #1512406 > > --- > 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; > } > -- > 2.25.1 >
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; }
From: Pierre-Anthony Lemieux <pal@palemieux.com> Fixes Coverity issue #1512406 --- libavformat/imfdec.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)