瀏覽代碼

AROS: apparently, the NewStackSwap() function is just a half arsed copy of MorphOS/NewPPCStackSwap(), so it doesn't accept nil as its third argument. Therefore we pass a pointer to some area we won't use anyway. this fixes crashes in the stack swapping code on hosted systems.

git-svn-id: trunk@28636 -
Károly Balogh 11 年之前
父節點
當前提交
fbfcda2926
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      rtl/aros/i386/prt0.as

+ 3 - 1
rtl/aros/i386/prt0.as

@@ -89,7 +89,8 @@ _allocStack:
     movl     %eax,8(%ecx)           /* Initial stackpointer */
     movl     _ExecBase,%eax
     pushl    %eax
-    pushl    $0
+    lea      StackSwapArgs,%ebx
+    pushl    %ebx
     lea      _initProc,%ebx
     pushl    %ebx
     pushl    %ecx
@@ -158,3 +159,4 @@ _ExecBase:      .skip   4
 
 StackAreaPtr:    .skip   4
 StackSwapStruct: .skip   12
+StackSwapArgs:   .skip   32