Jelajahi Sumber

Fix arm specific failure in tw12048

git-svn-id: trunk@42657 -
pierre 6 tahun lalu
induk
melakukan
8015bfb5a0
1 mengubah file dengan 6 tambahan dan 2 penghapusan
  1. 6 2
      rtl/inc/heaptrc.pp

+ 6 - 2
rtl/inc/heaptrc.pp

@@ -562,7 +562,9 @@ begin
    pp^.extra_info:=nil;
   if add_tail then
     begin
-      pl:=pointer(pp)+allocsize-pp^.extra_info_size-tail_size;
+      { Calculate position from start because of arm
+        specific alignment }
+      pl:=pointer(pp)+sizeof(theap_mem_info)+pp^.size;
       for i:=1 to tail_size div sizeof(dword) do
         begin
           unaligned(pl^):=dword(AllocateSig);
@@ -924,7 +926,9 @@ begin
    pp^.extra_info:=nil;
   if add_tail then
     begin
-      pl:=pointer(pp)+allocsize-pp^.extra_info_size-tail_size;
+      { Calculate position from start because of arm
+        specific alignment }
+      pl:=pointer(pp)+sizeof(theap_mem_info)+pp^.size;
       for i:=1 to tail_size div sizeof(dword) do
         begin
           unaligned(pl^):=dword(AllocateSig);