diff --git a/ChangeLog b/ChangeLog index 381a00de27..1b6d3c5c4a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2008-07-23 Matthias Clasen + + Bug 544265 – GDK assumes XFIXES extension + + * gdk/x11/gdkcursor-x11.c (_gdk_x11_cursor_update_theme): + Only call XFixes functions if the server has the extension. + Reported by Ian Turner. + 2008-07-22 Matthias Clasen * configure.in: Compare two content types, not content type diff --git a/gdk/x11/gdkcursor-x11.c b/gdk/x11/gdkcursor-x11.c index 18431901a2..ef18c519dc 100644 --- a/gdk/x11/gdkcursor-x11.c +++ b/gdk/x11/gdkcursor-x11.c @@ -40,6 +40,7 @@ #include "gdkprivate-x11.h" #include "gdkcursor.h" +#include "gdkdisplay-x11.h" #include "gdkpixmap-x11.h" #include "gdkx.h" #include @@ -401,10 +402,15 @@ _gdk_x11_cursor_update_theme (GdkCursor *cursor) Display *xdisplay; GdkCursorPrivate *private; Cursor new_cursor = None; + GdkDisplayX11 *display_x11; private = (GdkCursorPrivate *) cursor; xdisplay = GDK_DISPLAY_XDISPLAY (private->display); - + display_x11 = GDK_DISPLAY_X11 (private->display); + + if (!display_x11->have_xfixes) + return; + if (private->serial == theme_serial) return;