Author: janderwald
Date: Mon Feb 13 11:12:58 2012
New Revision: 55572
URL:
http://svn.reactos.org/svn/reactos?rev=55572&view=rev
Log:
[HIDUSB]
- Retrieve protocol after configuration has been selected
- Fixes HID regression
See issue #6886 for more details.
Modified:
trunk/reactos/drivers/hid/hidusb/hidusb.c
Modified: trunk/reactos/drivers/hid/hidusb/hidusb.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/hid/hidusb/hidusb.…
==============================================================================
--- trunk/reactos/drivers/hid/hidusb/hidusb.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/hid/hidusb/hidusb.c [iso-8859-1] Mon Feb 13 11:12:58 2012
@@ -1311,6 +1311,7 @@
//
DeviceExtension = (PHID_DEVICE_EXTENSION)DeviceObject->DeviceExtension;
HidDeviceExtension =
(PHID_USB_DEVICE_EXTENSION)DeviceExtension->MiniDeviceExtension;
+ ASSERT(HidDeviceExtension->InterfaceInfo);
if (HidDeviceExtension->InterfaceInfo->SubClass != 0x1)
{
@@ -1488,11 +1489,6 @@
Hid_SetIdle(DeviceObject);
//
- // get protocol
- //
- Hid_GetProtocol(DeviceObject);
-
- //
// move to next descriptor
//
HidDescriptor = (PHID_DESCRIPTOR)((ULONG_PTR)InterfaceDescriptor +
InterfaceDescriptor->bLength);
@@ -1518,6 +1514,11 @@
// done
//
DPRINT("[HIDUSB] SelectConfiguration %x\n", Status);
+
+ //
+ // get protocol
+ //
+ Hid_GetProtocol(DeviceObject);
return Status;
}
@@ -1526,6 +1527,11 @@
//
UNIMPLEMENTED
ASSERT(FALSE);
+
+ //
+ // get protocol
+ //
+ Hid_GetProtocol(DeviceObject);
return STATUS_SUCCESS;
}