[NTOS:IO]

- Simplify logic in PipCallDriverAddDevice.
CORE-13336

svn path=/trunk/; revision=75048
This commit is contained in:
Thomas Faber 2017-06-15 13:51:09 +00:00
parent b2405204cd
commit 7b8f448f33

View file

@ -361,19 +361,22 @@ PipCallDriverAddDevice(IN PDEVICE_NODE DeviceNode,
IopRemoveDevice(DeviceNode);
goto Exit;
}
Status = IopInitializeDevice(DeviceNode, DriverObject);
if (NT_SUCCESS(Status))
{
Status = IopAttachFilterDrivers(DeviceNode, SubKey, FALSE);
if (!NT_SUCCESS(Status))
{
IopRemoveDevice(DeviceNode);
goto Exit;
}
Status = IopStartDevice(DeviceNode);
Status = IopInitializeDevice(DeviceNode, DriverObject);
if (!NT_SUCCESS(Status))
{
goto Exit;
}
Status = IopAttachFilterDrivers(DeviceNode, SubKey, FALSE);
if (!NT_SUCCESS(Status))
{
IopRemoveDevice(DeviceNode);
goto Exit;
}
Status = IopStartDevice(DeviceNode);
Exit:
/* Close key and return status */
ZwClose(SubKey);