1- #include <X11/Xatom.h>
1+ #include <X11/Xatom.h>
22#include <gdk/gdkx.h>
33#include <gdk/gdk.h>
44#include <string.h>
@@ -13,6 +13,7 @@ static char *
1313wm_common_get_window_manager_property (Atom atom )
1414{
1515 Atom utf8_string , type ;
16+ GdkDisplay * display ;
1617 int result ;
1718 char * retval ;
1819 int format ;
@@ -25,18 +26,20 @@ wm_common_get_window_manager_property (Atom atom)
2526
2627 utf8_string = gdk_x11_get_xatom_by_name ("UTF8_STRING" );
2728
28- gdk_error_trap_push ();
29+ display = gdk_display_get_default ();
30+
31+ gdk_x11_display_error_trap_push (display );
2932
3033 val = NULL ;
31- result = XGetWindowProperty (GDK_DISPLAY_XDISPLAY ( gdk_display_get_default () ),
34+ result = XGetWindowProperty (GDK_DISPLAY_XDISPLAY ( display ),
3235 wm_window ,
3336 atom ,
3437 0 , G_MAXLONG ,
3538 False , utf8_string ,
3639 & type , & format , & nitems ,
3740 & bytes_after , (guchar * * ) & val );
3841
39- if (gdk_error_trap_pop ( ) || result != Success ||
42+ if (gdk_x11_display_error_trap_pop ( display ) || result != Success ||
4043 type != utf8_string || format != 8 || nitems == 0 ||
4144 !g_utf8_validate (val , nitems , NULL ))
4245 {
@@ -69,13 +72,16 @@ wm_common_get_current_window_manager (void)
6972static void
7073update_wm_window (void )
7174{
75+ GdkDisplay * display ;
7276 Window * xwindow ;
7377 Atom type ;
7478 gint format ;
7579 gulong nitems ;
7680 gulong bytes_after ;
7781
78- XGetWindowProperty (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), GDK_ROOT_WINDOW (),
82+ display = gdk_display_get_default ();
83+
84+ XGetWindowProperty (GDK_DISPLAY_XDISPLAY (display ), GDK_ROOT_WINDOW (),
7985 gdk_x11_get_xatom_by_name ("_NET_SUPPORTING_WM_CHECK" ),
8086 0 , G_MAXLONG , False , XA_WINDOW , & type , & format ,
8187 & nitems , & bytes_after , (guchar * * ) & xwindow );
@@ -86,11 +92,11 @@ update_wm_window (void)
8692 return ;
8793 }
8894
89- gdk_error_trap_push ( );
90- XSelectInput (GDK_DISPLAY_XDISPLAY ( gdk_display_get_default () ), * xwindow , StructureNotifyMask | PropertyChangeMask );
91- XSync (GDK_DISPLAY_XDISPLAY ( gdk_display_get_default () ), False );
95+ gdk_x11_display_error_trap_push ( display );
96+ XSelectInput (GDK_DISPLAY_XDISPLAY ( display ), * xwindow , StructureNotifyMask | PropertyChangeMask );
97+ XSync (GDK_DISPLAY_XDISPLAY ( display ), False );
9298
93- if (gdk_error_trap_pop ( ))
99+ if (gdk_x11_display_error_trap_pop ( display ))
94100 {
95101 XFree (xwindow );
96102 wm_window = None ;
0 commit comments