[vlc-commits] demux: smooth: fix use after free

Francois Cartegnie git at videolan.org
Thu May 16 18:04:35 CEST 2019


vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Thu May 16 18:03:18 2019 +0200| [c22330b0195056f8fad12a51516492e0294b01e6] | committer: Francois Cartegnie

demux: smooth: fix use after free

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=c22330b0195056f8fad12a51516492e0294b01e6
---

 modules/demux/smooth/playlist/ForgedInitSegment.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/modules/demux/smooth/playlist/ForgedInitSegment.cpp b/modules/demux/smooth/playlist/ForgedInitSegment.cpp
index 78f614ef35..cbd364fde9 100644
--- a/modules/demux/smooth/playlist/ForgedInitSegment.cpp
+++ b/modules/demux/smooth/playlist/ForgedInitSegment.cpp
@@ -288,12 +288,14 @@ block_t * ForgedInitSegment::buildMoovBox()
         }
 
         box = mp4mux_GetMoov(muxh, NULL, trackTimescale.ToTime(duration.Get()));
-        mp4mux_Delete(muxh);
     }
     es_format_Clean(&fmt);
 
     if(!box)
+    {
+        mp4mux_Delete(muxh);
         return NULL;
+    }
 
     block_t *moov = box->b;
     free(box);
@@ -312,6 +314,7 @@ block_t * ForgedInitSegment::buildMoovBox()
         free(box);
     }
 
+    mp4mux_Delete(muxh);
     return moov;
 }
 



More information about the vlc-commits mailing list