mirror of
https://github.com/reactos/reactos.git
synced 2024-07-01 02:10:07 +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
|
// query capabilities
|
||||||
//
|
//
|
||||||
Status = HidClassFDO_QueryCapabilities(DeviceObject, &FDODeviceExtension->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
|
// lets start the lower device too
|
||||||
|
@ -369,13 +375,25 @@ HidClassFDO_StartDevice(
|
||||||
// lets get the descriptors
|
// lets get the descriptors
|
||||||
//
|
//
|
||||||
Status = HidClassFDO_GetDescriptors(DeviceObject);
|
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
|
// now get the the collection description
|
||||||
//
|
//
|
||||||
Status = HidP_GetCollectionDescription(FDODeviceExtension->ReportDescriptor, FDODeviceExtension->HidDescriptor.DescriptorList[0].wReportLength, NonPagedPool, &FDODeviceExtension->Common.DeviceDescription);
|
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
|
// complete request
|
||||||
|
|
Loading…
Reference in a new issue