diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index c1a74f1c1f960c1e9c3da2774f0c43f6f6ba2526..804c7f647da66c798d1a6868239a00c9da1bfe2f 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; }