]> git.sesse.net Git - vlc/commitdiff
Fix memory leak
authorRémi Denis-Courmont <rem@videolan.org>
Wed, 26 Mar 2008 19:10:56 +0000 (21:10 +0200)
committerRémi Denis-Courmont <rem@videolan.org>
Wed, 26 Mar 2008 19:10:56 +0000 (21:10 +0200)
modules/misc/lua/playlist.c

index 84ab8cbe220212d2a9ea7280f02b91aa13099976..7a98733e291024d57c4b3fe5d4fbbe111ae20c49 100644 (file)
@@ -188,6 +188,7 @@ int E_(Import_LuaPlaylist)( vlc_object_t *p_this )
 {
     demux_t *p_demux = (demux_t *)p_this;
     lua_State *L;
+    int ret;
 
     p_demux->p_sys = (demux_sys_t*)malloc( sizeof( demux_sys_t ) );
     if( !p_demux->p_sys )
@@ -223,12 +224,14 @@ int E_(Import_LuaPlaylist)( vlc_object_t *p_this )
 
     lua_pop( L, 1 );
 
-    return vlclua_scripts_batch_execute( p_this, "luaplaylist", &probe_luascript,
-                                         L, NULL );
+    ret = vlclua_scripts_batch_execute( p_this, "luaplaylist",
+                                        &probe_luascript, L, NULL );
+    if( ret )
+        E_(Close_LuaPlaylist)( p_this );
+    return ret;
 }
 
 
-
 /*****************************************************************************
  * Deactivate: frees unused data
  *****************************************************************************/