Use --x11-display whenever calling XOpenDisplay (except Qt4 this far)
[vlc.git] / modules / control / globalhotkeys / x11.c
index f0bb346..7a0099e 100644 (file)
@@ -43,14 +43,14 @@ static void Close( vlc_object_t *p_this );
 /*****************************************************************************
  * Module descriptor
  *****************************************************************************/
-vlc_module_begin();
-    set_shortname( _("Global Hotkeys") );
-    set_category( CAT_INTERFACE );
-    set_subcategory( SUBCAT_INTERFACE_HOTKEYS );
-    set_description( _("Global Hotkeys interface") );
-    set_capability( "interface", 0 );
-    set_callbacks( Open, Close );
-vlc_module_end();
+vlc_module_begin()
+    set_shortname( N_("Global Hotkeys") )
+    set_category( CAT_INTERFACE )
+    set_subcategory( SUBCAT_INTERFACE_HOTKEYS )
+    set_description( N_("Global Hotkeys interface") )
+    set_capability( "interface", 0 )
+    set_callbacks( Open, Close )
+vlc_module_end()
 
 typedef struct
 {
@@ -81,8 +81,10 @@ static int Open( vlc_object_t *p_this )
 {
     intf_thread_t *p_intf = (intf_thread_t *)p_this;
     intf_sys_t *p_sys;
+    char *psz_display = var_CreateGetNonEmptyString( p_intf, "x11-display" );
 
-    Display *p_display = XOpenDisplay( NULL );
+    Display *p_display = XOpenDisplay( psz_display );
+    free( psz_display );
     if( !p_display )
         return VLC_EGENERIC;
     XSetErrorHandler( X11ErrorHandler );
@@ -349,6 +351,7 @@ static void *Thread( void *p_data )
         {
             if( errno != EINTR )
                 break;
+            canc = vlc_savecancel();
             continue;
         }
         canc = vlc_savecancel();