Replaced calls to KERNEL.Yield16 by calls to KERNEL32.K32WOWYield from
outside libkernel.so.
diff --git a/dlls/winmm/mmsystem.c b/dlls/winmm/mmsystem.c
index 7d2c53e..c1583d9 100644
--- a/dlls/winmm/mmsystem.c
+++ b/dlls/winmm/mmsystem.c
@@ -22,7 +22,6 @@
#include "winbase.h"
#include "wingdi.h"
-#include "wine/winbase16.h"
#include "wine/winuser16.h"
#include "heap.h"
#include "winemm.h"
@@ -4967,7 +4966,7 @@
MSG msg;
if (PeekMessageA(&msg, 0, 0, 0, 0)) {
- Yield16();
+ K32WOWYield16();
}
}
@@ -5248,12 +5247,12 @@
TRACE("[30-%08x]\n", lpMMThd->hThread);
while (lpMMThd->dwCounter) {
Sleep(1);
- /* Yield16();*/
+ /* K32WOWYield16();*/
}
TRACE("[XX-%08x]\n", lpMMThd->hThread);
/* paranoia */
lpMMThd->dwSignature = WINE_MMTHREAD_DELETED;
- /* close lpMMThread->hVxD directio */
+ /* close lpMMThread->hVxD directIO */
if (lpMMThd->hEvent)
CloseHandle(lpMMThd->hEvent);
GlobalFree16(hndl);
diff --git a/include/wine/winbase16.h b/include/wine/winbase16.h
index 172f407..8a00d42 100644
--- a/include/wine/winbase16.h
+++ b/include/wine/winbase16.h
@@ -325,7 +325,9 @@
void WINAPI UnlockSegment16(HGLOBAL16);
BOOL16 WINAPI WritePrivateProfileString16(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
BOOL16 WINAPI WriteProfileString16(LPCSTR,LPCSTR,LPCSTR);
+/* Yield16 will only be available from kernel module, use K32WOWYield instead */
VOID WINAPI Yield16(void);
+VOID WINAPI K32WOWYield16(void);
SEGPTR WINAPI lstrcat16(SEGPTR,LPCSTR);
SEGPTR WINAPI lstrcatn16(SEGPTR,LPCSTR,INT16);
SEGPTR WINAPI lstrcpy16(SEGPTR,LPCSTR);
diff --git a/windows/message.c b/windows/message.c
index 150201a..4582203 100644
--- a/windows/message.c
+++ b/windows/message.c
@@ -2020,7 +2020,7 @@
/*
* Then, let the 16 bit scheduler do it's thing.
*/
- Yield16();
+ K32WOWYield16();
/*
* If a message matching the wait mask has arrived, return.
diff --git a/windows/queue.c b/windows/queue.c
index cdd3d85..39563f2 100644
--- a/windows/queue.c
+++ b/windows/queue.c
@@ -745,7 +745,7 @@
QUEUE_Unlock( queue );
return 0; /* exit with timeout */
}
- Yield16();
+ K32WOWYield16();
}
}
}
diff --git a/windows/winhelp.c b/windows/winhelp.c
index 012d4fd..ff690f8 100644
--- a/windows/winhelp.c
+++ b/windows/winhelp.c
@@ -44,7 +44,7 @@
/* try to start the 16-bit winhelp */
if (WinExec( "winhelp.exe -x", SW_SHOWNORMAL ) >= 32)
{
- Yield16();
+ K32WOWYield16();
ret = WinHelpA( hWnd, lpHelpFile, wCommand, (DWORD)MapSL(dwData) );
}
}