[HIDCLASS]
authorThomas Faber <thomas.faber@reactos.org>
Fri, 14 Apr 2017 09:55:17 +0000 (09:55 +0000)
committerThomas Faber <thomas.faber@reactos.org>
Fri, 14 Apr 2017 09:55:17 +0000 (09:55 +0000)
Patch by Lesan Ilie:
- Avoid over-allocating the DEVICE_RELATIONS structure in HidClassPDO_CreatePDO
- Allocate device relations from paged pool
CORE-13052 #resolve

svn path=/trunk/; revision=74302

reactos/drivers/hid/hidclass/pdo.c

index 92835a6..761cb24 100644 (file)
@@ -652,8 +652,8 @@ HidClassPDO_CreatePDO(
     //
     // first allocate device relations
     //
-    Length = sizeof(DEVICE_RELATIONS) + sizeof(PDEVICE_OBJECT) * FDODeviceExtension->Common.DeviceDescription.CollectionDescLength;
-    DeviceRelations = ExAllocatePoolWithTag(NonPagedPool, Length, HIDCLASS_TAG);
+    Length = FIELD_OFFSET(DEVICE_RELATIONS, Objects) + sizeof(PDEVICE_OBJECT) * FDODeviceExtension->Common.DeviceDescription.CollectionDescLength;
+    DeviceRelations = ExAllocatePoolWithTag(PagedPool, Length, HIDCLASS_TAG);
     if (!DeviceRelations)
     {
         //