Implemented KERNEL.447 (WIN32_OldYield16).

This commit is contained in:
Ulrich Weigand 1999-07-31 17:27:38 +00:00 committed by Alexandre Julliard
parent 56237566e4
commit 081daf7d21
4 changed files with 13 additions and 7 deletions

View file

@ -351,7 +351,7 @@ file krnl386.exe
444 pascal16 Local32Info(ptr word) Local32Info16 444 pascal16 Local32Info(ptr word) Local32Info16
445 pascal16 Local32First(ptr word) Local32First16 445 pascal16 Local32First(ptr word) Local32First16
446 pascal16 Local32Next(ptr) Local32Next16 446 pascal16 Local32Next(ptr) Local32Next16
447 pascal16 KERNEL_447() KERNEL_nop 447 pascal16 WIN32_OldYield() WIN32_OldYield16
448 stub KERNEL_448 448 stub KERNEL_448
449 pascal GetpWin16Lock() GetpWin16Lock16 449 pascal GetpWin16Lock() GetpWin16Lock16
450 pascal VWin32_EventWait(long) VWin32_EventWait 450 pascal VWin32_EventWait(long) VWin32_EventWait

View file

@ -93,6 +93,7 @@ HMODULE WINAPI LoadLibraryEx32W16(LPCSTR,HANDLE16,DWORD);
FARPROC16 WINAPI LocalNotify16(FARPROC16); FARPROC16 WINAPI LocalNotify16(FARPROC16);
HTASK16 WINAPI LockCurrentTask16(BOOL16); HTASK16 WINAPI LockCurrentTask16(BOOL16);
VOID WINAPI OldYield16(void); VOID WINAPI OldYield16(void);
VOID WINAPI WIN32_OldYield16(void);
VOID WINAPI PostEvent16(HTASK16); VOID WINAPI PostEvent16(HTASK16);
WORD WINAPI PrestoChangoSelector16(WORD,WORD); WORD WINAPI PrestoChangoSelector16(WORD,WORD);
WORD WINAPI SelectorAccessRights16(WORD,WORD,WORD); WORD WINAPI SelectorAccessRights16(WORD,WORD,WORD);

View file

@ -870,6 +870,16 @@ void WINAPI OldYield16(void)
if (pCurTask) pCurTask->nEvents--; if (pCurTask) pCurTask->nEvents--;
} }
/***********************************************************************
* WIN32_OldYield16 (KERNEL.447)
*/
void WINAPI WIN32_OldYield16(void)
{
DWORD count;
ReleaseThunkLock(&count);
RestoreThunkLock(count);
}
/*********************************************************************** /***********************************************************************
* DirectedYield (KERNEL.150) * DirectedYield (KERNEL.150)

View file

@ -1533,12 +1533,7 @@ void WINAPI UserYield16(void)
if ( THREAD_IsWin16( NtCurrentTeb() ) ) if ( THREAD_IsWin16( NtCurrentTeb() ) )
OldYield16(); OldYield16();
else else
{ WIN32_OldYield16();
DWORD count;
ReleaseThunkLock(&count);
RestoreThunkLock(count);
}
/* Handle sent messages again */ /* Handle sent messages again */
queue = (MESSAGEQUEUE *)QUEUE_Lock( GetFastQueue16() ); queue = (MESSAGEQUEUE *)QUEUE_Lock( GetFastQueue16() );