From 92781ad39491963d1869b9922abf5872cf342eee Mon Sep 17 00:00:00 2001 From: Michael Lotz Date: Tue, 28 Jul 2009 01:14:55 +0000 Subject: [PATCH] Actually the index values cannot be larger than 16 bits as otherwise they would cross usage page boundaries. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31839 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp | 6 +++--- src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.h | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp index 0426b0fb6f..ca56378ff5 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp +++ b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.cpp @@ -90,7 +90,7 @@ KeyboardDevice::KeyboardDevice(HIDReport *inputReport, HIDReport *outputReport) TRACE("keyboard device with %lu keys and %lu modifiers\n", fKeyCount, fModifierCount); - fLastKeys = (uint32 *)malloc(fKeyCount * 2 * sizeof(uint32)); + fLastKeys = (uint16 *)malloc(fKeyCount * 2 * sizeof(uint16)); fCurrentKeys = &fLastKeys[fKeyCount]; if (fLastKeys == NULL) { fStatus = B_NO_MEMORY; @@ -550,8 +550,8 @@ KeyboardDevice::_ReadReport(bigtime_t timeout) static bool sysReqPressed = false; bool keyDown = false; - uint32 *current = fLastKeys; - uint32 *compare = fCurrentKeys; + uint16 *current = fLastKeys; + uint16 *compare = fCurrentKeys; for (int32 twice = 0; twice < 2; twice++) { for (size_t i = 0; i < fKeyCount; i++) { if (current[i] == 0 || (current[i] == 1 && diff --git a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.h b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.h index a8769c8d01..88a0af4251 100644 --- a/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.h +++ b/src/add-ons/kernel/drivers/input/usb_hid/KeyboardDevice.h @@ -45,8 +45,8 @@ private: uint32 fModifierCount; uint8 fLastModifiers; - uint32 * fCurrentKeys; - uint32 * fLastKeys; + uint16 * fCurrentKeys; + uint16 * fLastKeys; }; #endif // USB_KEYBOARD_DEVICE_H