mxfdec: Fix potential leak in mxf_read_local_tags()
authorTomas Härdin <tomas.hardin@codemill.se>
Wed, 24 Oct 2012 14:54:25 +0000 (16:54 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 24 Oct 2012 15:45:49 +0000 (17:45 +0200)
This fixes CID 733800.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavformat/mxfdec.c

index d4ab49f..5fca1a8 100644 (file)
@@ -1646,6 +1646,9 @@ static int mxf_read_local_tags(MXFContext *mxf, KLVPacket *klv, MXFMetadataReadF
         /* Accept the 64k local set limit being exceeded (Avid). Don't accept
          * it extending past the end of the KLV though (zzuf5.mxf). */
         if (avio_tell(pb) > klv_end) {
+            if (ctx_size)
+                av_free(ctx);
+
             av_log(mxf->fc, AV_LOG_ERROR,
                    "local tag %#04x extends past end of local set @ %#"PRIx64"\n",
                    tag, klv->offset);