ntdll: Implement RtlRestoreContext on i386.

This commit is contained in:
Jakub Staroń 2022-08-19 08:03:29 +02:00 committed by Alexandre Julliard
parent 5253c8d77e
commit 88d13e663d
3 changed files with 10 additions and 2 deletions

View file

@ -1313,7 +1313,7 @@
@ stdcall RtlMoveMemory(ptr ptr long) NTDLL.RtlMoveMemory @ stdcall RtlMoveMemory(ptr ptr long) NTDLL.RtlMoveMemory
@ stdcall RtlPcToFileHeader(ptr ptr) NTDLL.RtlPcToFileHeader @ stdcall RtlPcToFileHeader(ptr ptr) NTDLL.RtlPcToFileHeader
@ stdcall -arch=arm,arm64,x86_64 -norelay RtlRaiseException(ptr) NTDLL.RtlRaiseException @ stdcall -arch=arm,arm64,x86_64 -norelay RtlRaiseException(ptr) NTDLL.RtlRaiseException
@ cdecl -arch=arm,arm64,x86_64 -import RtlRestoreContext(ptr ptr) @ cdecl -import RtlRestoreContext(ptr ptr)
@ stdcall RtlUnwind(ptr ptr ptr long) NTDLL.RtlUnwind @ stdcall RtlUnwind(ptr ptr ptr long) NTDLL.RtlUnwind
@ stdcall -arch=arm,arm64,x86_64 RtlUnwindEx(long long ptr long ptr) NTDLL.RtlUnwindEx @ stdcall -arch=arm,arm64,x86_64 RtlUnwindEx(long long ptr long ptr) NTDLL.RtlUnwindEx
@ stdcall -arch=arm,arm64,x86_64 RtlVirtualUnwind(long long long ptr ptr ptr ptr ptr) NTDLL.RtlVirtualUnwind @ stdcall -arch=arm,arm64,x86_64 RtlVirtualUnwind(long long long ptr ptr ptr ptr ptr) NTDLL.RtlVirtualUnwind

View file

@ -952,7 +952,7 @@
@ stdcall RtlRemoveVectoredContinueHandler(ptr) @ stdcall RtlRemoveVectoredContinueHandler(ptr)
@ stdcall RtlRemoveVectoredExceptionHandler(ptr) @ stdcall RtlRemoveVectoredExceptionHandler(ptr)
@ stdcall RtlResetRtlTranslations(ptr) @ stdcall RtlResetRtlTranslations(ptr)
@ cdecl -arch=arm,arm64,x86_64 RtlRestoreContext(ptr ptr) @ cdecl RtlRestoreContext(ptr ptr)
@ stdcall RtlRestoreLastWin32Error(long) RtlSetLastWin32Error @ stdcall RtlRestoreLastWin32Error(long) RtlSetLastWin32Error
@ stub RtlRevertMemoryStream @ stub RtlRevertMemoryStream
@ stub RtlRunDecodeUnicodeString @ stub RtlRunDecodeUnicodeString

View file

@ -359,6 +359,14 @@ __ASM_STDCALL_FUNC( RtlCaptureContext, 4,
__ASM_CFI(".cfi_adjust_cfa_offset -4\n\t") __ASM_CFI(".cfi_adjust_cfa_offset -4\n\t")
"ret $4" ) "ret $4" )
/*******************************************************************
* RtlRestoreContext (NTDLL.@)
*/
void CDECL RtlRestoreContext( CONTEXT *context, EXCEPTION_RECORD *rec )
{
TRACE( "returning to %p stack %p\n", (void *)context->Eip, (void *)context->Esp );
NtContinue( context, FALSE );
}
/******************************************************************* /*******************************************************************
* RtlUnwind (NTDLL.@) * RtlUnwind (NTDLL.@)