diff options
author | Brian Cameron <brian.cameron@sun.com> | 2007-09-12 18:24:24 +0000 |
---|---|---|
committer | Brian Cameron <bcameron@src.gnome.org> | 2007-09-12 18:24:24 +0000 |
commit | 777599adcd84916c3fd7ad55f0a11081a3bb971e (patch) | |
tree | 6b7667c9d1323e1f4e1c7883d509a097692fdc7c | |
parent | 25537c4abc1d0c84f44eaee450df737fad4e883b (diff) | |
download | gdm-777599adcd84916c3fd7ad55f0a11081a3bb971e.tar.gz |
Improve checking for input devices so it doesn't fail on Ubuntu, and we
2007-09-12 Brian Cameron <brian.cameron@sun.com>
* gui/modules/keymouselistener.c: Improve checking for input
devices so it doesn't fail on Ubuntu, and we free memory
relating to the devices. Fixes bug #440948. Patch by
Gerd Kohlberger <lowfi@chello.at>.
svn path=/trunk/; revision=5246
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | gui/modules/keymouselistener.c | 4 |
2 files changed, 10 insertions, 1 deletions
@@ -1,5 +1,12 @@ 2007-09-12 Brian Cameron <brian.cameron@sun.com> + * gui/modules/keymouselistener.c: Improve checking for input + devices so it doesn't fail on Ubuntu, and we free memory + relating to the devices. Fixes bug #440948. Patch by + Gerd Kohlberger <lowfi@chello.at>. + +2007-09-12 Brian Cameron <brian.cameron@sun.com> + * daemon/auth.c, common/gdm-common.c: Fix bug with IPv6 logic. Fixes bug reported in bug #376010. Patch by Jacob Berkman <jacob@gnome.org>. diff --git a/gui/modules/keymouselistener.c b/gui/modules/keymouselistener.c index 250cab16..8150b2cf 100644 --- a/gui/modules/keymouselistener.c +++ b/gui/modules/keymouselistener.c @@ -169,7 +169,8 @@ init_xinput (GdkDisplay *display, GdkWindow *root) syslog (LOG_WARNING, "checking %d input devices...", num_devices); for (i=0; i < num_devices; i++) { - if (devices[i].use == IsXExtensionDevice) + if (devices[i].use == IsXExtensionDevice && + devices[i].num_classes > 0) { device = XOpenDevice (GDK_DISPLAY_XDISPLAY (display), devices[i].id); @@ -207,6 +208,7 @@ init_xinput (GdkDisplay *display, GdkWindow *root) } } } + XFreeDeviceList (devices); if (debug_gestures) syslog (LOG_WARNING, "%d event types available", number); |