]> git.sesse.net Git - vlc/blobdiff - src/osd/osd.c
fix testapi test: libvlc_instance_(play|pause|stop) are asynchronous, so wait for...
[vlc] / src / osd / osd.c
index 72ae0f5c407cd1fcd27864ec8cbb06595ac394b5..b89024470ef522c8367715027958df98b8730140 100644 (file)
  * Preamble
  *****************************************************************************/
 
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
 #include <vlc/vlc.h>
 #include <vlc_keys.h>
 #include <vlc_osd.h>
@@ -34,7 +38,9 @@
 
 #undef OSD_MENU_DEBUG
 
+#if 0
 static const char *ppsz_button_states[] = { "unselect", "select", "pressed" };
+#endif
 
 /*****************************************************************************
  * Local prototypes
@@ -45,7 +51,7 @@ static inline osd_state_t *osd_VolumeStateChange( osd_state_t *, int );
 static int osd_VolumeStep( vlc_object_t *, int, int );
 static vlc_bool_t osd_isVisible( osd_menu_t *p_osd );
 static osd_menu_t *osd_ParserLoad( vlc_object_t *, const char * );
-static void osd_ParserUnload( vlc_object_t *, osd_menu_t * );
+static void osd_ParserUnload( osd_menu_t * );
 
 static vlc_bool_t osd_isVisible( osd_menu_t *p_osd )
 {
@@ -77,7 +83,7 @@ static osd_menu_t *osd_ParserLoad( vlc_object_t *p_this, const char *psz_file )
     if( !p_menu->p_image || !p_menu->psz_file )
     {
         msg_Err( p_this, "unable to load images, aborting .." );
-        osd_ParserUnload( p_this, p_menu );
+        osd_ParserUnload( p_menu );
         return NULL;
     }
     else
@@ -86,22 +92,22 @@ static osd_menu_t *osd_ParserLoad( vlc_object_t *p_this, const char *psz_file )
         char *psz_ext = strrchr( p_menu->psz_file, '.' );
 
         if( psz_ext && !strcmp( psz_ext, ".cfg") )
-            psz_type = "import-osd";
+            psz_type = (char*)"import-osd";
         else
-            psz_type = "import-osd-xml";
+            psz_type = (char*)"import-osd-xml";
 
         p_menu->p_parser = module_Need( p_menu, "osd parser",
                                         psz_type, VLC_TRUE );
         if( !p_menu->p_parser )
         {
-            osd_ParserUnload( p_this, p_menu );
+            osd_ParserUnload( p_menu );
             return NULL;
         }
     }
     return p_menu;
 }
 
-static void osd_ParserUnload( vlc_object_t *p_this, osd_menu_t *p_menu )
+static void osd_ParserUnload( osd_menu_t *p_menu )
 {
     if( p_menu->p_image )
         image_HandlerDelete( p_menu->p_image );
@@ -112,7 +118,7 @@ static void osd_ParserUnload( vlc_object_t *p_this, osd_menu_t *p_menu )
         module_Unneed( p_menu, p_menu->p_parser );
 
     vlc_object_detach( p_menu );
-    vlc_object_destroy( p_menu );
+    vlc_object_release( p_menu );
 }
 
 /**
@@ -210,7 +216,7 @@ error:
         free( p_osd->psz_file );
 
     vlc_object_detach( p_osd );
-    vlc_object_destroy( p_osd );
+    vlc_object_release( p_osd );
     vlc_mutex_unlock( lockval.p_address );
     return NULL;
 }
@@ -234,7 +240,7 @@ void __osd_MenuDelete( vlc_object_t *p_this, osd_menu_t *p_osd )
     var_Destroy( p_osd, "osd-menu-visible" );
     var_Destroy( p_osd, "osd-menu-update" );
 
-    osd_ParserUnload( p_this, p_osd );
+    osd_ParserUnload( p_osd );
     p_osd = NULL;
     vlc_mutex_unlock( lockval.p_address );
 }
@@ -711,7 +717,7 @@ osd_button_t *__osd_ButtonFind( vlc_object_t *p_this, int i_x, int i_y,
     int i_scale_width, int i_scale_height )
 {
     osd_menu_t *p_osd;
-    osd_button_t *p_button, *p_start, *p_end;
+    osd_button_t *p_button;
     vlc_value_t lockval;
 
     p_osd = vlc_object_find( p_this, VLC_OBJECT_OSDMENU, FIND_ANYWHERE );