Browse Source

AROS: Semaphores are much bigger on 64bit, fixes crashes and freezes on AROS64 with Threading enabled

git-svn-id: trunk@36206 -
marcus 8 years ago
parent
commit
67c3fd2276
1 changed files with 6 additions and 2 deletions
  1. 6 2
      rtl/amicommon/sysosh.inc

+ 6 - 2
rtl/amicommon/sysosh.inc

@@ -23,9 +23,13 @@ type
   PRTLCriticalSection = ^TRTLCriticalSection;
   TRTLCriticalSection = record
     { This must actually be bigger or equal to sizeof(TSignalSemaphore)
-      which seems to be 46 bytes on MorphOS and Amiga/m68k and
-      56 bytes on AROS/x86 ABIv0. }
+      which seems to be 46 bytes on MorphOS and Amiga/m68k,
+      56 bytes on AROS/x86 ABIv0 and 104 bytes on AROS x64}
+    {$ifdef CPU64}
+    semaphore: array[0..128] of byte;
+    {$else}
     semaphore: array[0..63] of byte;
+    {$endif}
   end;
 
 { BeginThread flags we support in AThreads }