summaryrefslogtreecommitdiff
path: root/gdk/x11/gdkdevicemanager-xi2.c
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2015-06-30 16:28:59 +0200
committerCarlos Garnacho <carlosg@gnome.org>2016-04-06 15:43:29 +0200
commit6febc2291878b102c3f3d083977b3068f36fe49e (patch)
treee71d9e40dce1123035e9ce5a70b9e50e30870968 /gdk/x11/gdkdevicemanager-xi2.c
parent8e917093df600abe822c73c43f39c0ab861350ef (diff)
downloadgtk+-6febc2291878b102c3f3d083977b3068f36fe49e.tar.gz
x11: Use XInternAtom directly on poking device hardware IDs
This way we don't cache the property if it wasn't previously there, added by the driver itself. Bailing out is due there.
Diffstat (limited to 'gdk/x11/gdkdevicemanager-xi2.c')
-rw-r--r--gdk/x11/gdkdevicemanager-xi2.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gdk/x11/gdkdevicemanager-xi2.c b/gdk/x11/gdkdevicemanager-xi2.c
index 310e24ec9f..497a18a9fd 100644
--- a/gdk/x11/gdkdevicemanager-xi2.c
+++ b/gdk/x11/gdkdevicemanager-xi2.c
@@ -345,13 +345,17 @@ get_device_ids (GdkDisplay *display,
gulong nitems, bytes_after;
guint32 *data;
int rc, format;
- Atom type;
+ Atom prop, type;
gdk_x11_display_error_trap_push (display);
+ prop = XInternAtom (GDK_DISPLAY_XDISPLAY (display), "Device Product ID", True);
+
+ if (prop == None)
+ return 0;
+
rc = XIGetProperty (GDK_DISPLAY_XDISPLAY (display),
- info->deviceid,
- gdk_x11_get_xatom_by_name_for_display (display, "Device Product ID"),
+ info->deviceid, prop,
0, 2, False, XA_INTEGER, &type, &format, &nitems, &bytes_after,
(guchar **) &data);
gdk_x11_display_error_trap_pop_ignored (display);