There's no way to properly unload a driver, so don't try.
This commit is contained in:
parent
9cbe48f80c
commit
e4a20a4bb9
|
@ -20,7 +20,6 @@
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include "windef.h"
|
#include "windef.h"
|
||||||
#include "winbase.h"
|
|
||||||
#include "winternl.h"
|
#include "winternl.h"
|
||||||
#include "wine/library.h"
|
#include "wine/library.h"
|
||||||
#include "crt0_private.h"
|
#include "crt0_private.h"
|
||||||
|
@ -31,10 +30,8 @@ extern NTSTATUS DriverEntry( struct _DRIVER_OBJECT *obj, UNICODE_STRING *path );
|
||||||
NTSTATUS __wine_spec_drv_entry( struct _DRIVER_OBJECT *obj, UNICODE_STRING *path )
|
NTSTATUS __wine_spec_drv_entry( struct _DRIVER_OBJECT *obj, UNICODE_STRING *path )
|
||||||
{
|
{
|
||||||
BOOL needs_init = (__wine_spec_init_state != CONSTRUCTORS_DONE);
|
BOOL needs_init = (__wine_spec_init_state != CONSTRUCTORS_DONE);
|
||||||
NTSTATUS ret;
|
|
||||||
|
|
||||||
if (needs_init) _init( __wine_main_argc, __wine_main_argv, __wine_main_environ );
|
if (needs_init) _init( __wine_main_argc, __wine_main_argv, __wine_main_environ );
|
||||||
ret = DriverEntry( obj, path );
|
return DriverEntry( obj, path );
|
||||||
if (needs_init) _fini();
|
/* there is no detach routine so we can't call destructors */
|
||||||
ExitProcess( ret );
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue