ntdll: Fix crash on nested thread exit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
8d773e2c83
commit
7ccae68f6c
|
@ -2566,6 +2566,7 @@ __ASM_GLOBAL_FUNC( start_thread,
|
|||
|
||||
extern void DECLSPEC_NORETURN call_thread_exit_func( int status, void (*func)(int) );
|
||||
__ASM_GLOBAL_FUNC( call_thread_exit_func,
|
||||
"movl 8(%esp),%ecx\n\t"
|
||||
/* fetch exit frame */
|
||||
"movl %fs:0x1f4,%edx\n\t" /* x86_thread_data()->exit_frame */
|
||||
"testl %edx,%edx\n\t"
|
||||
|
@ -2573,7 +2574,6 @@ __ASM_GLOBAL_FUNC( call_thread_exit_func,
|
|||
"jmp *%ecx\n\t"
|
||||
/* switch to exit frame stack */
|
||||
"1:\tmovl 4(%esp),%eax\n\t"
|
||||
"movl 8(%esp),%ecx\n\t"
|
||||
"movl $0,%fs:0x1f4\n\t"
|
||||
"movl %edx,%ebp\n\t"
|
||||
__ASM_CFI(".cfi_def_cfa %ebp,4\n\t")
|
||||
|
|
Loading…
Reference in New Issue