Fix FdcPower() stub so that it doesn't leak IRP on shutdown
Dedicated to Thomas.

CORE-10117

svn path=/trunk/; revision=70531
This commit is contained in:
Pierre Schweitzer 2016-01-07 19:23:55 +00:00
parent 762e2a1af4
commit d5691eba70

View file

@ -143,8 +143,34 @@ NTAPI
FdcPower(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp)
{
PIO_STACK_LOCATION IrpSp;
NTSTATUS Status = Irp->IoStatus.Status;
PFDO_DEVICE_EXTENSION DeviceExtension = DeviceObject->DeviceExtension;
DPRINT("FdcPower()\n");
return STATUS_UNSUCCESSFUL;
IrpSp = IoGetCurrentIrpStackLocation(Irp);
if (DeviceExtension->Common.IsFDO)
{
PoStartNextPowerIrp(Irp);
IoSkipCurrentIrpStackLocation(Irp);
return PoCallDriver(DeviceExtension->LowerDevice, Irp);
}
else
{
switch (IrpSp->MinorFunction)
{
case IRP_MN_QUERY_POWER:
case IRP_MN_SET_POWER:
Status = STATUS_SUCCESS;
break;
}
PoStartNextPowerIrp(Irp);
Irp->IoStatus.Status = Status;
IoCompleteRequest(Irp, IO_NO_INCREMENT);
return Status;
}
}