--- /dev/null
+diff -dur -x '*~' -x '*.orig' xfce4-settings-4.6.1.orig/dialogs/mouse-settings/main.c xfce4-settings-4.6.1/dialogs/mouse-settings/main.c
+--- xfce4-settings-4.6.1.orig/dialogs/mouse-settings/main.c 2009-03-28 10:57:59.000000000 +0100
++++ xfce4-settings-4.6.1/dialogs/mouse-settings/main.c 2010-05-05 09:18:12.000000000 +0200
+@@ -60,6 +60,10 @@
+ #define IsXExtensionPointer 4
+ #endif
+
++/* Xi 1.4 is required */
++#define MIN_XI_VERS_MAJOR 1
++#define MIN_XI_VERS_MINOR 4
++
+ /* settings */
+ #ifdef HAVE_XCURSOR
+ #define PREVIEW_ROWS (3)
+@@ -1222,12 +1226,19 @@
+ return EXIT_FAILURE;
+ }
+
+- /* check for Xi 1.4 */
++ /* check for Xi */
+ version = XGetExtensionVersion (GDK_DISPLAY (), INAME);
+- if (!version || !version->present || version->major_version < 1 || version->minor_version < 4)
++ if (version == NULL || !version->present) {
++ g_critical ("XI is not present.");
++ return EXIT_FAILURE;
++ }
++ else if (version->major_version < MIN_XI_VERS_MAJOR
++ || (version->major_version == MIN_XI_VERS_MAJOR
++ && version->minor_version < MIN_XI_VERS_MINOR))
+ {
+- g_critical ("XI is not present or too old.");
+-
++ g_critical ("Your XI is too old (%d.%d) version %d.%d is required.",
++ version->major_version, version->minor_version,
++ MIN_XI_VERS_MAJOR, MIN_XI_VERS_MINOR);
+ return EXIT_FAILURE;
+ }
+
+diff -dur -x '*~' -x '*.orig' xfce4-settings-4.6.1.orig/xfce4-settings-helper/pointers.c xfce4-settings-4.6.1/xfce4-settings-helper/pointers.c
+--- xfce4-settings-4.6.1.orig/xfce4-settings-helper/pointers.c 2009-03-28 10:57:59.000000000 +0100
++++ xfce4-settings-4.6.1/xfce4-settings-helper/pointers.c 2010-05-05 09:18:12.000000000 +0200
+@@ -42,6 +42,10 @@
+
+ #define MAX_DENOMINATOR (100.00)
+
++/* Xi 1.4 is required */
++#define MIN_XI_VERS_MAJOR 1
++#define MIN_XI_VERS_MINOR 4
++
+ /* test if the required version of inputproto (1.4.2) is available */
+ #if XI_Add_DevicePresenceNotify_Major >= 1 && defined (DeviceRemoved)
+ #define HAS_DEVICE_HOTPLUGGING
+@@ -133,18 +137,22 @@
+
+ /* get the default display */
+ xdisplay = gdk_x11_display_get_xdisplay (gdk_display_get_default ());
+-
++
+ /* query the extension version */
+ version = XGetExtensionVersion (xdisplay, INAME);
+-
+- /* check for Xi 1.4 */
+- if (!version || !version->present || version->major_version < 1 || version->minor_version < 4)
+- {
+- /* print error */
+- g_critical ("XI is not present or too old.");
+
+- /* no channel */
+- helper->channel = NULL;
++ /* check for Xi */
++ if (version == NULL || !version->present)
++ {
++ g_critical ("XI is not present.");
++ }
++ else if (version->major_version < MIN_XI_VERS_MAJOR
++ || (version->major_version == MIN_XI_VERS_MAJOR
++ && version->minor_version < MIN_XI_VERS_MINOR))
++ {
++ g_critical ("Your XI is too old (%d.%d) version %d.%d is required.",
++ version->major_version, version->minor_version,
++ MIN_XI_VERS_MAJOR, MIN_XI_VERS_MINOR);
+ }
+ else
+ {