mirror of
https://github.com/reactos/reactos.git
synced 2024-06-28 00:41:36 +00:00
[HIDCLASS]
- Handle device initialization errors CORE-6575 svn path=/trunk/; revision=57825
This commit is contained in:
parent
752fa55287
commit
0b6cc39c0a
|
@ -350,7 +350,13 @@ HidClassFDO_StartDevice(
|
|||
// query capabilities
|
||||
//
|
||||
Status = HidClassFDO_QueryCapabilities(DeviceObject, &FDODeviceExtension->Capabilities);
|
||||
ASSERT(Status == STATUS_SUCCESS);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
DPRINT1("[HIDCLASS] Failed to retrieve capabilities %x\n", Status);
|
||||
Irp->IoStatus.Status = Status;
|
||||
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
||||
return Status;
|
||||
}
|
||||
|
||||
//
|
||||
// lets start the lower device too
|
||||
|
@ -369,13 +375,25 @@ HidClassFDO_StartDevice(
|
|||
// lets get the descriptors
|
||||
//
|
||||
Status = HidClassFDO_GetDescriptors(DeviceObject);
|
||||
ASSERT(Status == STATUS_SUCCESS);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
DPRINT1("[HIDCLASS] Failed to retrieve the descriptors %x\n", Status);
|
||||
Irp->IoStatus.Status = Status;
|
||||
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
||||
return Status;
|
||||
}
|
||||
|
||||
//
|
||||
// now get the the collection description
|
||||
//
|
||||
Status = HidP_GetCollectionDescription(FDODeviceExtension->ReportDescriptor, FDODeviceExtension->HidDescriptor.DescriptorList[0].wReportLength, NonPagedPool, &FDODeviceExtension->Common.DeviceDescription);
|
||||
ASSERT(Status == STATUS_SUCCESS);
|
||||
if (!NT_SUCCESS(Status))
|
||||
{
|
||||
DPRINT1("[HIDCLASS] Failed to retrieve the collection description %x\n", Status);
|
||||
Irp->IoStatus.Status = Status;
|
||||
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
||||
return Status;
|
||||
}
|
||||
|
||||
//
|
||||
// complete request
|
||||
|
|
Loading…
Reference in a new issue