Module: wine Branch: master Commit: d498780294c635f67aee823bc030151a6b75bee4 URL: https://source.winehq.org/git/wine.git/?a=commit;h=d498780294c635f67aee823bc...
Author: Zebediah Figura z.figura12@gmail.com Date: Fri Dec 21 17:28:47 2018 -0600
ntoskrnl.exe: Handle already-loaded drivers in handle_bus_relations().
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntoskrnl.exe/ntoskrnl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 88ec372..48b309f 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -3756,7 +3756,10 @@ static void handle_bus_relations( DEVICE_OBJECT *device ) strcpyW( buffer, servicesW ); strcatW( buffer, driver ); RtlInitUnicodeString( &string, buffer ); - if (ZwLoadDriver( &string ) != STATUS_SUCCESS) + status = ZwLoadDriver( &string ); + if (status == STATUS_IMAGE_ALREADY_LOADED) + return; + else if (status != STATUS_SUCCESS) { ERR_(plugplay)( "Failed to load driver %s\n", debugstr_w(driver) ); return;