Browse Source

* Future-proof CallerAddr

git-svn-id: trunk@30360 -
michael 10 years ago
parent
commit
e8da5e1170
1 changed files with 11 additions and 7 deletions
  1. 11 7
      packages/fcl-fpcunit/src/fpcunit.pp

+ 11 - 7
packages/fcl-fpcunit/src/fpcunit.pp

@@ -347,14 +347,18 @@ Const
 
 
 
 
 function CallerAddr: Pointer;
 function CallerAddr: Pointer;
-var
-  bp: Pointer;
+
+Var
+  bp,pcaddr : pointer;
+  
 begin
 begin
-  bp := get_caller_frame(get_frame);
-  if bp <> nil then
-    Result := get_caller_addr(bp)
-  else
-    Result := nil;
+  Result:=Nil;
+  bp:=get_frame;
+  pcaddr:=get_pc_addr;
+  get_caller_stackinfo(bp,pcaddr);
+  if bp<>Nil then
+    get_caller_stackinfo(bp,pcaddr);
+  result:=pcaddr;
 end;
 end;
 
 
 function AddrsToStr(Addrs: Pointer): string;
 function AddrsToStr(Addrs: Pointer): string;