]> diplodocus.org Git - xorg-xinput/commitdiff
Change is_xinput_present() to xinput_version().
authorPeter Hutterer <peter.hutterer@who-t.net>
Wed, 4 Mar 2009 11:25:50 +0000 (21:25 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Sat, 21 Mar 2009 12:18:41 +0000 (22:18 +1000)
Returns major version of XI.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
src/xinput.c
src/xinput.h

index 029b3fbd98a134e54e92a38178cb5b4c81f76e85..88fe2fa311c0b94a80012894019d085e094a66e4 100644 (file)
@@ -135,21 +135,23 @@ static entry drivers[] =
     }
 };
 
     }
 };
 
-static Bool
-is_xinput_present(Display      *display)
+int
+xinput_version(Display *display)
 {
     XExtensionVersion  *version;
 {
     XExtensionVersion  *version;
-    Bool               present;
+    static int vers = -1;
+
+    if (vers != -1)
+        return vers;
 
     version = XGetExtensionVersion(display, INAME);
 
     if (version && (version != (XExtensionVersion*) NoSuchExtension)) {
 
     version = XGetExtensionVersion(display, INAME);
 
     if (version && (version != (XExtensionVersion*) NoSuchExtension)) {
-       present = version->present;
+       vers = version->major_version;
        XFree(version);
        XFree(version);
-       return present;
-    } else {
-       return False;
     }
     }
+
+    return vers;
 }
 
 XDeviceInfo*
 }
 
 XDeviceInfo*
@@ -269,7 +271,7 @@ main(int argc, char * argv[])
     func = argv[1];
     while((*func) == '-') func++;
 
     func = argv[1];
     while((*func) == '-') func++;
 
-    if (!is_xinput_present(display)) {
+    if (!xinput_version(display)) {
        fprintf(stderr, "%s extension not available\n", INAME);
        return EXIT_FAILURE;
     }
        fprintf(stderr, "%s extension not available\n", INAME);
        return EXIT_FAILURE;
     }
index 96ae321a49363707a623c27409d70c3db6e3f767..cdb2b2d40c4ef88591600a50795e2818d4146811 100644 (file)
@@ -47,6 +47,7 @@ find_device_info(
 int
 xi2_find_device_id(Display *display, char *name);
 
 int
 xi2_find_device_id(Display *display, char *name);
 
+int xinput_version(Display* display);
 
 #define DECLARE(name) \
     int (name) ( \
 
 #define DECLARE(name) \
     int (name) ( \