소스 검색

* set TOC pointer when returning to HandleErrorAddrFrame from signal handler

git-svn-id: trunk@20826 -
Jonas Maebe 13 년 전
부모
커밋
60869a0da0
1개의 변경된 파일2개의 추가작업 그리고 0개의 파일을 삭제
  1. 2 0
      rtl/aix/sighnd.inc

+ 2 - 0
rtl/aix/sighnd.inc

@@ -63,6 +63,8 @@ begin
       { the address of a function is a descriptor, and we need the actual
         address here -> dereference }
       pointer(SigContext^.uc_mcontext.iar) := ppointer(@HandleErrorAddrFrame)^;
+      { set corresponding TOC for the routine we are returning to }
+      pointer(SigContext^.uc_mcontext.gpr[2]) := (ppointer(@HandleErrorAddrFrame)+1)^;
     end;
 end;