x86_userspace_thread_exit() did not correctly setup the stack for the syscall.
I don't know why (or how) it could work before r19775, though. This fixes the wrong return code from wait_for_thread() in most cases, and thus, bug #1011. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20060 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -130,9 +130,10 @@ FUNCTION(i386_swap_pgdir):
|
||||
.align 4
|
||||
FUNCTION(x86_userspace_thread_exit):
|
||||
pushl %eax
|
||||
sub $4, %esp
|
||||
movl $1, %ecx
|
||||
lea (%esp), %edx
|
||||
movl $SYSCALL_EXIT_THREAD, %eax;
|
||||
movl $SYSCALL_EXIT_THREAD, %eax
|
||||
int $99
|
||||
.align 4
|
||||
FUNCTION(x86_end_userspace_thread_exit):
|
||||
|
||||
Reference in New Issue
Block a user