user32: Load the 32-bit user.exe module wrapper from the 32-bit side.
diff --git a/dlls/user.exe16/user.c b/dlls/user.exe16/user.c
index 6889088..6c7ec7e 100644
--- a/dlls/user.exe16/user.c
+++ b/dlls/user.exe16/user.c
@@ -387,6 +387,17 @@
}
}
+
+/**********************************************************************
+ * DllMain
+ */
+BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserved )
+{
+ if (reason == DLL_PROCESS_ATTACH) LoadLibrary16( "user.exe" );
+ return TRUE;
+}
+
+
/**********************************************************************
* InitApp (USER.5)
*/
diff --git a/dlls/user32/user_main.c b/dlls/user32/user_main.c
index 9440934..d076e67 100644
--- a/dlls/user32/user_main.c
+++ b/dlls/user32/user_main.c
@@ -29,7 +29,6 @@
#include "controls.h"
#include "user_private.h"
#include "win.h"
-#include "wine/winbase16.h"
#include "wine/unicode.h"
#include "wine/debug.h"
@@ -271,8 +270,6 @@
*/
static BOOL process_attach(void)
{
- LoadLibrary16( "user.exe" );
-
winstation_init();
/* Initialize system colors and metrics */
@@ -281,6 +278,8 @@
/* Setup palette function pointers */
palette_init();
+ LoadLibraryA( "user.exe16" );
+
/* Initialize built-in window classes */
CLASS_RegisterBuiltinClasses();