ffmpeg | branch: release/5.0 | Pierre-Anthony Lemieux <[email protected]> | 
Tue Jan  4 18:42:06 2022 -0800| [8d18c08f0c5584af8698ae9d60c1e07b83db8c2f] | 
committer: Zane van Iperen

avformat/imf: fix CPL parsing error handling

Signed-off-by: Pierre-Anthony Lemieux <[email protected]>
Signed-off-by: Zane van Iperen <[email protected]>
(cherry picked from commit 76ffe1c2f1432001f2cdde42d53c839247a43380)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8d18c08f0c5584af8698ae9d60c1e07b83db8c2f
---

 libavformat/imf_cpl.c | 7 +++++--
 1 file 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;

_______________________________________________
ffmpeg-cvslog mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to