All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] ui: do not call XGetAtomName if keycodes is not an atom
@ 2012-07-06 23:01 Alex Suykov
  0 siblings, 0 replies; only message in thread
From: Alex Suykov @ 2012-07-06 23:01 UTC (permalink / raw)
  To: qemu-devel; +Cc: Anthony Liguori

XkbGetKeyboard may return zero instead of a valid atom
in names->keycodes in some cases. XGetAtomName(dpy, 0)
results in BadAtom error and crashes qemu.

Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
---
 ui/sdl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ui/sdl.c b/ui/sdl.c
index f6f711c..e74b892 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
@@ -269,7 +269,7 @@ static int check_for_evdev(void)
     desc = XkbGetKeyboard(info.info.x11.display,
                           XkbGBN_AllComponentsMask,
                           XkbUseCoreKbd);
-    if (desc && desc->names) {
+    if (desc && desc->names && desc->names->keycodes) {
         keycodes = XGetAtomName(info.info.x11.display, desc->names->keycodes);
         if (keycodes == NULL) {
             fprintf(stderr, "could not lookup keycode name\n");
-- 
1.7.11.1

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2012-07-06 23:01 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-06 23:01 [Qemu-devel] [PATCH] ui: do not call XGetAtomName if keycodes is not an atom Alex Suykov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.