diff options
author | Pierre-Anthony Lemieux <pal@palemieux.com> | 2022-01-04 18:42:06 -0800 |
---|---|---|
committer | Zane van Iperen <zane@zanevaniperen.com> | 2022-01-05 21:19:47 +1000 |
commit | 76ffe1c2f1432001f2cdde42d53c839247a43380 (patch) | |
tree | 537ec55ecf72edc6c9f98b631a2834a8411c46b0 /libavformat/imf_cpl.c | |
parent | 59f1a46048109b8ec9f953d0d9348f9f1ae2a8c2 (diff) | |
download | ffmpeg-76ffe1c2f1432001f2cdde42d53c839247a43380.tar.gz |
avformat/imf: fix CPL parsing error handling
Signed-off-by: Pierre-Anthony Lemieux <pal@palemieux.com>
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Diffstat (limited to 'libavformat/imf_cpl.c')
-rw-r--r-- | libavformat/imf_cpl.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libavformat/imf_cpl.c b/libavformat/imf_cpl.c index 28798d3e36..366a1be9e2 100644 --- a/libavformat/imf_cpl.c +++ b/libavformat/imf_cpl.c @@ -807,7 +807,9 @@ int ff_imf_parse_cpl(AVIOContext *in, FFIMFCPL **cpl) av_log(NULL, AV_LOG_ERROR, "Cannot read IMF CPL\n"); if (ret == 0) ret = AVERROR_INVALIDDATA; - } else { + goto clean_up; + } + LIBXML_TEST_VERSION filesize = buf.len; @@ -817,6 +819,7 @@ int ff_imf_parse_cpl(AVIOContext *in, FFIMFCPL **cpl) AV_LOG_ERROR, "XML parsing failed when reading the IMF CPL\n"); ret = AVERROR_INVALIDDATA; + goto clean_up; } if ((ret = ff_imf_parse_cpl_from_xml_dom(doc, cpl))) { @@ -833,8 +836,8 @@ int ff_imf_parse_cpl(AVIOContext *in, FFIMFCPL **cpl) } xmlFreeDoc(doc); - } +clean_up: av_bprint_finalize(&buf, NULL); return ret; |