[vlc-commits] commit: Extensions: fix vlc.deactivate() malfunction ( Jean-Philippe André )

git at videolan.org git at videolan.org
Wed May 5 15:41:30 CEST 2010


vlc | branch: master | Jean-Philippe André <jpeg at videolan.org> | Wed May  5 21:27:52 2010 +0800| [0a15eecff314dc9f9cb8b9e6d89d1b338dd54948] | committer: Jean-Philippe André 

Extensions: fix vlc.deactivate() malfunction

Inspired by jetru's patches, thank you. This should fix #3451

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

 modules/misc/lua/extension_thread.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/modules/misc/lua/extension_thread.c b/modules/misc/lua/extension_thread.c
index 9df6bbd..78a2608 100644
--- a/modules/misc/lua/extension_thread.c
+++ b/modules/misc/lua/extension_thread.c
@@ -146,12 +146,16 @@ int Deactivate( extensions_manager_t *p_mgr, extension_t *p_ext )
     }
 
     /* Free the list of commands */
-    FreeCommands( p_ext->p_sys->command );
+    if( p_ext->p_sys->command )
+        FreeCommands( p_ext->p_sys->command->next );
 
     /* Push command */
     struct command_t *cmd = calloc( 1, sizeof( struct command_t ) );
     cmd->i_command = CMD_DEACTIVATE;
-    p_ext->p_sys->command = cmd;
+    if( p_ext->p_sys->command )
+        p_ext->p_sys->command->next = cmd;
+    else
+        p_ext->p_sys->command = cmd;
 
     vlc_cond_signal( &p_ext->p_sys->wait );
     vlc_mutex_unlock( &p_ext->p_sys->command_lock );



More information about the vlc-commits mailing list