Run Winelib applications as 32-bit processes in the initial task.
Simplified/removed several special 'if (__winelib)' cases in
Wine main code obsoleted by that change.
diff --git a/misc/callback.c b/misc/callback.c
index 3907fc3..1305961 100644
--- a/misc/callback.c
+++ b/misc/callback.c
@@ -9,6 +9,7 @@
#include "windows.h"
#include "callback.h"
#include "task.h"
+#include "syslevel.h"
/**********************************************************************
@@ -232,6 +233,17 @@
}
/**********************************************************************
+ * CALLBACK_CallTaskRescheduleProc
+ */
+static void WINAPI CALLBACK_CallTaskRescheduleProc( void )
+{
+ SYSLEVEL_EnterWin16Lock();
+ TASK_Reschedule();
+ SYSLEVEL_LeaveWin16Lock();
+}
+
+
+/**********************************************************************
* CALLBACK_WinelibTable
*
* The callbacks function table for Winelib
@@ -240,7 +252,7 @@
{
CALLBACK_CallRegisterProc, /* CallRegisterShortProc */
CALLBACK_CallRegisterProc, /* CallRegisterLongProc */
- TASK_Reschedule, /* CallTaskRescheduleProc */
+ CALLBACK_CallTaskRescheduleProc, /* CallTaskRescheduleProc */
NULL, /* CallFrom16WndProc */
CALLBACK_CallWndProc, /* CallWndProc */
CALLBACK_CallDriverProc, /* CallDriverProc */