mirror of
https://github.com/reactos/reactos.git
synced 2024-10-05 08:54:40 +00:00
[NTOSKRNL]
- Revert r46720 and fix the issue properly svn path=/trunk/; revision=46724
This commit is contained in:
parent
6141336a78
commit
dfb82f3856
|
@ -460,22 +460,6 @@ IopCompleteRequest(IN PKAPC Apc,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* Check if we have an associated user IOSB */
|
|
||||||
if (Irp->UserIosb)
|
|
||||||
{
|
|
||||||
/* We do, so let's give them the final status */
|
|
||||||
_SEH2_TRY
|
|
||||||
{
|
|
||||||
/* Save the IOSB Information */
|
|
||||||
*Irp->UserIosb = Irp->IoStatus;
|
|
||||||
}
|
|
||||||
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
|
|
||||||
{
|
|
||||||
/* Ignore any error */
|
|
||||||
}
|
|
||||||
_SEH2_END;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Either we didn't return from the request, or we did return but this
|
* Either we didn't return from the request, or we did return but this
|
||||||
* request was synchronous.
|
* request was synchronous.
|
||||||
|
@ -485,6 +469,9 @@ IopCompleteRequest(IN PKAPC Apc,
|
||||||
/* So we did return with a synch operation, was it the IRP? */
|
/* So we did return with a synch operation, was it the IRP? */
|
||||||
if (Irp->Flags & IRP_SYNCHRONOUS_API)
|
if (Irp->Flags & IRP_SYNCHRONOUS_API)
|
||||||
{
|
{
|
||||||
|
/* Yes, this IRP was synchronous, so return the I/O Status */
|
||||||
|
*Irp->UserIosb = Irp->IoStatus;
|
||||||
|
|
||||||
/* Now check if the user gave an event */
|
/* Now check if the user gave an event */
|
||||||
if (Irp->UserEvent)
|
if (Irp->UserEvent)
|
||||||
{
|
{
|
||||||
|
|
|
@ -163,7 +163,10 @@ IopStartDevice(
|
||||||
DPRINT("IopInitiatePnpIrp(IRP_MN_FILTER_RESOURCE_REQUIREMENTS) failed\n");
|
DPRINT("IopInitiatePnpIrp(IRP_MN_FILTER_RESOURCE_REQUIREMENTS) failed\n");
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
DeviceNode->ResourceRequirements = (PIO_RESOURCE_REQUIREMENTS_LIST)IoStatusBlock.Information;
|
else if (NT_SUCCESS(Status))
|
||||||
|
{
|
||||||
|
DeviceNode->ResourceRequirements = (PIO_RESOURCE_REQUIREMENTS_LIST)IoStatusBlock.Information;
|
||||||
|
}
|
||||||
|
|
||||||
Status = IopAssignDeviceResources(DeviceNode, &RequiredLength);
|
Status = IopAssignDeviceResources(DeviceNode, &RequiredLength);
|
||||||
if (NT_SUCCESS(Status))
|
if (NT_SUCCESS(Status))
|
||||||
|
|
Loading…
Reference in a new issue