[vlc-commits] Revert "Remove unused intf_thread_t.psz_intf"

Pierre Ynard git at videolan.org
Sat Dec 3 19:48:37 CET 2011


vlc/vlc-1.2 | branch: master | Pierre Ynard <linkfanel at yahoo.fr> | Sat Dec  3 19:44:10 2011 +0100| [843313053c29a6b56cb093ec16d38edfbe2b3078] | committer: Pierre Ynard

Revert "Remove unused intf_thread_t.psz_intf"

This reverts commit e9cff78d90c102abe1aa2a8b81df34c29402a806.

This is needed to fix `vlc -I lua`

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

 include/vlc_interface.h   |    1 +
 src/interface/interface.c |   17 +++++++++--------
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/include/vlc_interface.h b/include/vlc_interface.h
index 3157373..2f21e2e 100644
--- a/include/vlc_interface.h
+++ b/include/vlc_interface.h
@@ -60,6 +60,7 @@ typedef struct intf_thread_t
 
     /* Specific interfaces */
     intf_sys_t *        p_sys;                          /** system interface */
+    char *              psz_intf;                    /** intf name specified */
 
     /** Interface module */
     module_t *   p_module;
diff --git a/src/interface/interface.c b/src/interface/interface.c
index 75aea21..709bf73 100644
--- a/src/interface/interface.c
+++ b/src/interface/interface.c
@@ -64,10 +64,10 @@ static vlc_mutex_t lock = VLC_STATIC_MUTEX;
  * Create and start an interface.
  *
  * @param p_this the calling vlc_object_t
- * @param chain configuration chain string
+ * @param psz_module a preferred interface module
  * @return VLC_SUCCESS or an error code
  */
-int intf_Create( vlc_object_t *p_this, const char *chain )
+int intf_Create( vlc_object_t *p_this, const char *psz_module )
 {
     libvlc_int_t *p_libvlc = p_this->p_libvlc;
     intf_thread_t * p_intf;
@@ -113,15 +113,14 @@ int intf_Create( vlc_object_t *p_this, const char *chain )
 
     /* Choose the best module */
     p_intf->p_cfg = NULL;
-    char *psz_parser = *chain == '$'
-                     ? var_CreateGetString(p_intf, chain+1)
-                     : strdup( chain );
-    char *module;
-    char *psz_tmp = config_ChainCreate( &module, &p_intf->p_cfg,
+    char *psz_parser = *psz_module == '$'
+                     ? var_CreateGetString(p_intf,psz_module+1)
+                     : strdup( psz_module );
+    char *psz_tmp = config_ChainCreate( &p_intf->psz_intf, &p_intf->p_cfg,
                                         psz_parser );
     free( psz_tmp );
     free( psz_parser );
-    p_intf->p_module = module_need( p_intf, "interface", module, true );
+    p_intf->p_module = module_need( p_intf, "interface", p_intf->psz_intf, true );
     if( p_intf->p_module == NULL )
     {
         msg_Err( p_intf, "no suitable interface module" );
@@ -169,6 +168,7 @@ error:
     if( p_intf->p_module )
         module_unneed( p_intf, p_intf->p_module );
     config_ChainDestroy( p_intf->p_cfg );
+    free( p_intf->psz_intf );
     vlc_object_release( p_intf );
     return VLC_EGENERIC;
 }
@@ -204,6 +204,7 @@ void intf_DestroyAll( libvlc_int_t *p_libvlc )
             vlc_join( p_intf->thread, NULL );
         }
         module_unneed( p_intf, p_intf->p_module );
+        free( p_intf->psz_intf );
         config_ChainDestroy( p_intf->p_cfg );
         vlc_object_release( p_intf );
 



More information about the vlc-commits mailing list