Signed-off-by: Zebediah Figura z.figura12@gmail.com --- dlls/hidclass.sys/hid.h | 7 ------- dlls/hidclass.sys/main.c | 2 -- dlls/hidclass.sys/pnp.c | 27 +-------------------------- 3 files changed, 1 insertion(+), 35 deletions(-)
diff --git a/dlls/hidclass.sys/hid.h b/dlls/hidclass.sys/hid.h index 8ffd489a0ee..889b8c625c0 100644 --- a/dlls/hidclass.sys/hid.h +++ b/dlls/hidclass.sys/hid.h @@ -72,12 +72,6 @@ void RingBuffer_Destroy(struct ReportRingBuffer *buffer) DECLSPEC_HIDDEN; struct ReportRingBuffer* RingBuffer_Create(UINT buffer_size) DECLSPEC_HIDDEN; NTSTATUS RingBuffer_SetSize(struct ReportRingBuffer *buffer, UINT size) DECLSPEC_HIDDEN;
-typedef struct _hiddevice -{ - struct list entry; - DEVICE_OBJECT *device; -} hid_device; - typedef struct _minidriver { struct list entry; @@ -88,7 +82,6 @@ typedef struct _minidriver
PDRIVER_ADD_DEVICE AddDevice; PDRIVER_DISPATCH PNPDispatch; - struct list device_list; } minidriver;
NTSTATUS call_minidriver(ULONG code, DEVICE_OBJECT *device, void *in_buff, ULONG in_size, void *out_buff, ULONG out_size) DECLSPEC_HIDDEN; diff --git a/dlls/hidclass.sys/main.c b/dlls/hidclass.sys/main.c index cef58217f5e..50657b80f5e 100644 --- a/dlls/hidclass.sys/main.c +++ b/dlls/hidclass.sys/main.c @@ -81,8 +81,6 @@ NTSTATUS WINAPI HidRegisterMinidriver(HID_MINIDRIVER_REGISTRATION *registration) driver->minidriver = *registration; list_add_tail(&minidriver_list, &driver->entry);
- list_init(&driver->device_list); - return STATUS_SUCCESS; }
diff --git a/dlls/hidclass.sys/pnp.c b/dlls/hidclass.sys/pnp.c index 13b07e4e379..a50e7382466 100644 --- a/dlls/hidclass.sys/pnp.c +++ b/dlls/hidclass.sys/pnp.c @@ -72,7 +72,6 @@ static NTSTATUS get_device_id(DEVICE_OBJECT *device, BUS_QUERY_ID_TYPE type, WCH NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { WCHAR device_id[MAX_DEVICE_ID_LEN], instance_id[MAX_DEVICE_ID_LEN]; - hid_device *hiddev; DEVICE_OBJECT *device = NULL; NTSTATUS status; minidriver *minidriver; @@ -97,18 +96,12 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) TRACE("Adding device to PDO %p, id %s\%s.\n", PDO, debugstr_w(device_id), debugstr_w(instance_id)); minidriver = find_minidriver(driver);
- hiddev = HeapAlloc(GetProcessHeap(), 0, sizeof(*hiddev)); - if (!hiddev) - return STATUS_NO_MEMORY; - - status = HID_CreateDevice(PDO, &minidriver->minidriver, &hiddev->device); + status = HID_CreateDevice(PDO, &minidriver->minidriver, &device); if (status != STATUS_SUCCESS) { ERR("Failed to create HID object (%x)\n",status); - HeapFree(GetProcessHeap(), 0, hiddev); return status; } - device = hiddev->device;
ext = device->DeviceExtension; InitializeListHead(&ext->irp_queue); @@ -120,7 +113,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { ERR("Minidriver AddDevice failed (%x)\n",status); HID_DeleteDevice(device); - HeapFree(GetProcessHeap(), 0, hiddev); return status; }
@@ -131,7 +123,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { ERR("Minidriver failed to get Attributes(%x)\n",status); HID_DeleteDevice(device); - HeapFree(GetProcessHeap(), 0, hiddev); return status; }
@@ -146,7 +137,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { ERR("Cannot get Device Descriptor(%x)\n",status); HID_DeleteDevice(device); - HeapFree(GetProcessHeap(), 0, hiddev); return status; } for (i = 0; i < descriptor.bNumDescriptors; i++) @@ -157,7 +147,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { ERR("No Report Descriptor found in reply\n"); HID_DeleteDevice(device); - HeapFree(GetProcessHeap(), 0, hiddev); return status; }
@@ -169,7 +158,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) ERR("Cannot get Report Descriptor(%x)\n",status); HID_DeleteDevice(device); HeapFree(GetProcessHeap(), 0, reportDescriptor); - HeapFree(GetProcessHeap(), 0, hiddev); return status; }
@@ -180,12 +168,9 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) { ERR("Cannot parse Report Descriptor\n"); HID_DeleteDevice(device); - HeapFree(GetProcessHeap(), 0, hiddev); return STATUS_NOT_SUPPORTED; }
- list_add_tail(&(minidriver->device_list), &hiddev->entry); - ext->information.DescriptorSize = ext->preparseData->dwSize;
lstrcpyW(ext->instance_id, instance_id); @@ -208,7 +193,6 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO) static NTSTATUS remove_device(minidriver *minidriver, DEVICE_OBJECT *device, IRP *irp) { BASE_DEVICE_EXTENSION *ext = device->DeviceExtension; - hid_device *hiddev; NTSTATUS rc = STATUS_NOT_SUPPORTED;
rc = IoSetDeviceInterfaceState(&ext->link_name, FALSE); @@ -224,15 +208,6 @@ static NTSTATUS remove_device(minidriver *minidriver, DEVICE_OBJECT *device, IRP if (irp) rc = minidriver->PNPDispatch(device, irp); HID_DeleteDevice(device); - LIST_FOR_EACH_ENTRY(hiddev, &minidriver->device_list, hid_device, entry) - { - if (hiddev->device == device) - { - list_remove(&hiddev->entry); - HeapFree(GetProcessHeap(), 0, hiddev); - break; - } - } return rc; }