[vlc-commits] bluray: fix overlay memleaks

Rafaël Carré git at videolan.org
Fri Aug 16 13:26:10 CEST 2013


vlc | branch: master | Rafaël Carré <funman at videolan.org> | Mon Aug 12 14:23:56 2013 +0200| [2a6ebe69b2c2f84234b592c7dc2e3f3706a94aa9] | committer: Rafaël Carré

bluray: fix overlay memleaks

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

 modules/access/bluray.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/modules/access/bluray.c b/modules/access/bluray.c
index 29621b9..5580a38 100644
--- a/modules/access/bluray.c
+++ b/modules/access/bluray.c
@@ -639,6 +639,7 @@ static void blurayCleanOverlayStruct(bluray_overlay_t *);
 static void subpictureUpdaterDestroy(subpicture_t *p_subpic)
 {
     blurayCleanOverlayStruct(p_subpic->updater.p_sys->p_overlay);
+    free(p_subpic->updater.p_sys);
 }
 
 /*****************************************************************************
@@ -685,7 +686,7 @@ static void blurayCleanOverlayStruct(bluray_overlay_t *p_overlay)
      * Don't delete it again from here!
      */
     vlc_mutex_destroy(&p_overlay->lock);
-    subpicture_region_Delete(p_overlay->p_regions);
+    subpicture_region_ChainDelete(p_overlay->p_regions);
     free(p_overlay);
 }
 
@@ -697,7 +698,7 @@ static void blurayCloseAllOverlays(demux_t *p_demux)
     if (!p_sys->p_vout)
         return;
 
-    for (int i = 0; i < 0; i++) {
+    for (int i = 0; i < MAX_OVERLAY; i++) {
         if (p_sys->p_overlays[i] != NULL) {
             vout_FlushSubpictureChannel(p_sys->p_vout,
                                         p_sys->p_overlays[i]->p_pic->i_channel);



More information about the vlc-commits mailing list