From bb0db5273f51629e2c900a27b45b9f8c44ad0e8d Mon Sep 17 00:00:00 2001 From: Michael Walle Date: Tue, 9 Aug 2011 23:54:52 +0200 Subject: [PATCH] hid: register kbd hander in init() Register the keyboard event handler in hid's init() instead of its reset() function. Signed-off-by: Michael Walle Signed-off-by: Gerd Hoffmann --- hw/hid.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/hid.c b/hw/hid.c index 77339f7..3dc4246 100644 --- a/hw/hid.c +++ b/hw/hid.c @@ -364,7 +364,6 @@ void hid_reset(HIDState *hs) { switch (hs->kind) { case HID_KEYBOARD: - qemu_add_kbd_event_handler(hid_keyboard_event, hs); memset(hs->kbd.keycodes, 0, sizeof(hs->kbd.keycodes)); memset(hs->kbd.key, 0, sizeof(hs->kbd.key)); hs->kbd.keys = 0; @@ -398,7 +397,9 @@ void hid_init(HIDState *hs, int kind, HIDEventFunc event) hs->kind = kind; hs->event = event; - if (hs->kind == HID_MOUSE) { + if (hs->kind == HID_KEYBOARD) { + qemu_add_kbd_event_handler(hid_keyboard_event, hs); + } else if (hs->kind == HID_MOUSE) { hs->ptr.eh_entry = qemu_add_mouse_event_handler(hid_pointer_event, hs, 0, "QEMU HID Mouse"); } else if (hs->kind == HID_TABLET) { -- 2.7.4