From 80d53026bf22a11aafaf3c4ba8fab6b1fe3b6cb0 Mon Sep 17 00:00:00 2001 From: Jacek Caban <jacek@codeweavers.com> Date: Mon, 8 Apr 2019 14:03:27 +0200 Subject: [PATCH] ntoskrnl.exe: Don't add device to the list if IoCreateDevice fails. Spotted by Zebediah Figura. Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org> --- dlls/ntoskrnl.exe/ntoskrnl.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index c1a74f1c1f9..804c7f647da 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -1502,9 +1502,6 @@ NTSTATUS WINAPI IoCreateDevice( DRIVER_OBJECT *driver, ULONG ext_size, device->DeviceType = type; device->StackSize = 1; - device->NextDevice = driver->DeviceObject; - driver->DeviceObject = device; - SERVER_START_REQ( create_device ) { req->rootdir = 0; @@ -1521,6 +1518,9 @@ NTSTATUS WINAPI IoCreateDevice( DRIVER_OBJECT *driver, ULONG ext_size, return status; } + device->NextDevice = driver->DeviceObject; + driver->DeviceObject = device; + *ret_device = device; return STATUS_SUCCESS; } -- GitLab