mirror of
https://github.com/reactos/reactos.git
synced 2024-10-01 23:14:53 +00:00
[KBDHID][MOUHID]
- Free the correct usage list buffer svn path=/trunk/; revision=58998
This commit is contained in:
parent
a4659f29fb
commit
647ff6e058
|
@ -729,6 +729,7 @@ KbdHid_StartDevice(
|
|||
ExFreePoolWithTag(PreparsedData, KBDHID_TAG);
|
||||
return STATUS_INSUFFICIENT_RESOURCES;
|
||||
}
|
||||
DeviceExtension->UsageListBuffer = Buffer;
|
||||
|
||||
/* init usage lists */
|
||||
RtlZeroMemory(Buffer, sizeof(USAGE_AND_PAGE) * 4 * Buttons);
|
||||
|
@ -788,9 +789,10 @@ KbdHid_FreeResources(
|
|||
DeviceExtension->PreparsedData = NULL;
|
||||
}
|
||||
|
||||
if (DeviceExtension->CurrentUsageList)
|
||||
if (DeviceExtension->UsageListBuffer)
|
||||
{
|
||||
ExFreePoolWithTag(DeviceExtension->CurrentUsageList, KBDHID_TAG);
|
||||
ExFreePoolWithTag(DeviceExtension->UsageListBuffer, KBDHID_TAG);
|
||||
DeviceExtension->UsageListBuffer = NULL;
|
||||
DeviceExtension->CurrentUsageList = NULL;
|
||||
DeviceExtension->PreviousUsageList = NULL;
|
||||
DeviceExtension->MakeUsageList = NULL;
|
||||
|
|
|
@ -40,6 +40,11 @@ typedef struct
|
|||
//
|
||||
PVOID ClassService;
|
||||
|
||||
//
|
||||
// buffer for the four usage lists below
|
||||
//
|
||||
PVOID UsageListBuffer;
|
||||
|
||||
//
|
||||
// usage list length
|
||||
//
|
||||
|
|
|
@ -720,7 +720,7 @@ MouHid_StartDevice(
|
|||
ULONG ValueCapsLength;
|
||||
HIDP_VALUE_CAPS ValueCaps;
|
||||
PMOUHID_DEVICE_EXTENSION DeviceExtension;
|
||||
PUSHORT Buffer;
|
||||
PUSAGE Buffer;
|
||||
|
||||
/* get device extension */
|
||||
DeviceExtension = DeviceObject->DeviceExtension;
|
||||
|
@ -816,6 +816,7 @@ MouHid_StartDevice(
|
|||
ExFreePoolWithTag(PreparsedData, MOUHID_TAG);
|
||||
return STATUS_INSUFFICIENT_RESOURCES;
|
||||
}
|
||||
DeviceExtension->UsageListBuffer = Buffer;
|
||||
|
||||
/* init usage lists */
|
||||
RtlZeroMemory(Buffer, sizeof(USAGE) * 4 * Buttons);
|
||||
|
@ -919,9 +920,10 @@ MouHid_FreeResources(
|
|||
DeviceExtension->PreparsedData = NULL;
|
||||
}
|
||||
|
||||
if (DeviceExtension->CurrentUsageList)
|
||||
if (DeviceExtension->UsageListBuffer)
|
||||
{
|
||||
ExFreePoolWithTag(DeviceExtension->CurrentUsageList, MOUHID_TAG);
|
||||
ExFreePoolWithTag(DeviceExtension->UsageListBuffer, MOUHID_TAG);
|
||||
DeviceExtension->UsageListBuffer = NULL;
|
||||
DeviceExtension->CurrentUsageList = NULL;
|
||||
DeviceExtension->PreviousUsageList = NULL;
|
||||
DeviceExtension->MakeUsageList = NULL;
|
||||
|
|
|
@ -49,6 +49,11 @@ typedef struct
|
|||
//
|
||||
USHORT WheelUsagePage;
|
||||
|
||||
//
|
||||
// buffer for the four usage lists below
|
||||
//
|
||||
PVOID UsageListBuffer;
|
||||
|
||||
//
|
||||
// usage list length
|
||||
//
|
||||
|
|
Loading…
Reference in a new issue