Forráskód Böngészése

* criticalsection renamed to rtlcriticalsection for kylix compatibility

peter 24 éve
szülő
commit
5d62342562

+ 13 - 5
fcl/inc/classesh.inc

@@ -17,12 +17,14 @@
 
 
 type
 type
    { extra types to compile with FPC }
    { extra types to compile with FPC }
-
-   TRTLCriticalSection = class(TObject);
    HRSRC = longint;
    HRSRC = longint;
    THANDLE = longint;
    THANDLE = longint;
    TComponentName = string;
    TComponentName = string;
 {$ifdef ver1_0}
 {$ifdef ver1_0}
+   // 1.0 doesn't have thread
+   TRTLCriticalSection = record
+     locked : longint;
+   end;
    // 1.1 and above has interfaces
    // 1.1 and above has interfaces
    IUnknown = class(TObject);
    IUnknown = class(TObject);
    TGUID = longint;
    TGUID = longint;
@@ -57,13 +59,16 @@ const
   scNone = 0;
   scNone = 0;
 
 
 { TStream seek origins }
 { TStream seek origins }
-
+const
   soFromBeginning = 0;
   soFromBeginning = 0;
   soFromCurrent = 1;
   soFromCurrent = 1;
   soFromEnd = 2;
   soFromEnd = 2;
 
 
-{ TFileStream create mode }
+type
+  TSeekOrigin = (soBeginning, soCurrent, soEnd);
 
 
+{ TFileStream create mode }
+const
   fmCreate        = $FFFF;
   fmCreate        = $FFFF;
   fmOpenRead      = 0;
   fmOpenRead      = 0;
   fmOpenWrite     = 1;
   fmOpenWrite     = 1;
@@ -1284,7 +1289,10 @@ function LineStart(Buffer, BufPos: PChar): PChar;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.11  2001-08-12 22:10:36  peter
+  Revision 1.12  2001-10-23 21:51:02  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.11  2001/08/12 22:10:36  peter
     * some interface updates for 1.1
     * some interface updates for 1.1
 
 
   Revision 1.10  2001/05/14 21:17:24  florian
   Revision 1.10  2001/05/14 21:17:24  florian

+ 5 - 2
rtl/inc/heap.inc

@@ -39,7 +39,7 @@
 
 
 {$ifdef MT}
 {$ifdef MT}
 var
 var
-   cs_systemheap : TCriticalSection;
+   cs_systemheap : TRTLCriticalSection;
 {$endif MT}
 {$endif MT}
 
 
 const
 const
@@ -1125,7 +1125,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2001-06-06 17:20:22  jonas
+  Revision 1.7  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.6  2001/06/06 17:20:22  jonas
     * fixed wrong typed constant procvars in preparation of my fix which will
     * fixed wrong typed constant procvars in preparation of my fix which will
       disallow them in FPC mode (plus some other unmerged changes since
       disallow them in FPC mode (plus some other unmerged changes since
       LAST_MERGE)
       LAST_MERGE)

+ 8 - 5
rtl/inc/threadh.inc

@@ -38,16 +38,19 @@ procedure EndThread;
 { this allows to do a lot of things in MT safe way }
 { this allows to do a lot of things in MT safe way }
 { it is also used to make the heap management      }
 { it is also used to make the heap management      }
 { thread safe                                      }
 { thread safe                                      }
-procedure InitCriticalsection(var cs : tcriticalsection);
-procedure DoneCriticalsection(var cs : tcriticalsection);
-procedure EnterCriticalsection(var cs : tcriticalsection);
-procedure LeaveCriticalsection(var cs : tcriticalsection);
+procedure InitCriticalSection(var cs : TRTLCriticalSection);
+procedure DoneCriticalsection(var cs : TRTLCriticalSection);
+procedure EnterCriticalsection(var cs : TRTLCriticalSection);
+procedure LeaveCriticalsection(var cs : TRTLCriticalSection);
 
 
 {$endif MT}
 {$endif MT}
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.4  2001-01-26 16:37:54  florian
+  Revision 1.5  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.4  2001/01/26 16:37:54  florian
   *** empty log message ***
   *** empty log message ***
 
 
   Revision 1.3  2001/01/24 21:47:18  florian
   Revision 1.3  2001/01/24 21:47:18  florian

+ 20 - 2
rtl/objpas/sysutilh.inc

@@ -35,13 +35,28 @@ type
    tintegerset = set of 0..sizeof(integer)*8-1;
    tintegerset = set of 0..sizeof(integer)*8-1;
 
 
    longrec = packed record
    longrec = packed record
-      lo,hi : word;
+      case integer of
+        0 : (lo,hi : word);
+        1 : (bytes : array[0..3] of byte);
    end;
    end;
 
 
    wordrec = packed record
    wordrec = packed record
       lo,hi : byte;
       lo,hi : byte;
    end;
    end;
 
 
+   int64rec = packed record
+      case integer of
+        0 : (lo,hi : cardinal);
+        1 : (words : array[0..3] of word);
+        2 : (bytes : array[0..7] of byte);
+   end;
+
+   pbytearray = ^tbytearray;
+   tbytearray = array[0..32767] of byte;
+
+   pwordarray = ^twordarray;
+   twordarray = array[0..16383] of word;
+
    TMethod = packed record
    TMethod = packed record
      Code, Data: Pointer;
      Code, Data: Pointer;
    end;
    end;
@@ -156,7 +171,10 @@ Type
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.13  2001-08-22 21:19:16  florian
+  Revision 1.14  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.13  2001/08/22 21:19:16  florian
     + some new stuff of D6/Kylix added
     + some new stuff of D6/Kylix added
 
 
   Revision 1.12  2001/08/22 14:11:28  florian
   Revision 1.12  2001/08/22 14:11:28  florian

+ 5 - 2
rtl/os2/system.pas

@@ -61,7 +61,7 @@ type
     (* TH: To make things easier, I copied the record definition *)
     (* TH: To make things easier, I copied the record definition *)
     (* from the Win32 version and just added longint variants,   *)
     (* from the Win32 version and just added longint variants,   *)
     (* because it seemed well suited for OS/2 too.               *)
     (* because it seemed well suited for OS/2 too.               *)
-    TCriticalSection = packed record
+    TRTLCriticalSection = packed record
         DebugInfo: pointer;
         DebugInfo: pointer;
         LockCount: longint;
         LockCount: longint;
         RecursionCount: longint;
         RecursionCount: longint;
@@ -1066,7 +1066,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.15  2001-06-19 20:46:07  hajny
+  Revision 1.16  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.15  2001/06/19 20:46:07  hajny
     * platform specific constants moved after systemh.inc, BeOS omission corrected
     * platform specific constants moved after systemh.inc, BeOS omission corrected
 
 
   Revision 1.14  2001/06/13 22:21:53  hajny
   Revision 1.14  2001/06/13 22:21:53  hajny

+ 9 - 6
rtl/os2/thread.inc

@@ -50,7 +50,7 @@ function DosFreeThreadLocalMemory (P: pointer): longint; cdecl;
                                                  external 'DOSCALLS' index 455;
                                                  external 'DOSCALLS' index 455;
 
 
 function DosCreateThread (var TID: longint; Address: pointer;
 function DosCreateThread (var TID: longint; Address: pointer;
-(* TThreadFunc *) 
+(* TThreadFunc *)
         aParam: pointer; Flags: longint; StackSize: longint): longint; cdecl;
         aParam: pointer; Flags: longint; StackSize: longint): longint; cdecl;
                                                  external 'DOSCALLS' index 311;
                                                  external 'DOSCALLS' index 311;
 
 
@@ -240,7 +240,7 @@ begin
  EndThread (0);
  EndThread (0);
 end;
 end;
 
 
-procedure InitCriticalSection (var CS: TCriticalSection);
+procedure InitCriticalSection (var CS: TRTLCriticalSection);
 begin
 begin
  if os_mode = osOS2 then
  if os_mode = osOS2 then
  begin
  begin
@@ -254,12 +254,12 @@ begin
  end;
  end;
 end;
 end;
 
 
-procedure DoneCriticalSection (var CS: TCriticalSection);
+procedure DoneCriticalSection (var CS: TRTLCriticalSection);
 begin
 begin
  if os_mode = osOS2 then DosCloseMutExSem (CS.LockSemaphore2);
  if os_mode = osOS2 then DosCloseMutExSem (CS.LockSemaphore2);
 end;
 end;
 
 
-procedure EnterCriticalSection (var CS: TCriticalSection);
+procedure EnterCriticalSection (var CS: TRTLCriticalSection);
 var
 var
  P, T, Cnt: longint;
  P, T, Cnt: longint;
  PTIB: PThreadInfoBlock;
  PTIB: PThreadInfoBlock;
@@ -293,7 +293,7 @@ begin
  end;
  end;
 end;
 end;
 
 
-procedure LeaveCriticalSection (var CS: TCriticalSection);
+procedure LeaveCriticalSection (var CS: TRTLCriticalSection);
 var
 var
  PTIB: PThreadInfoBlock;
  PTIB: PThreadInfoBlock;
  Err: boolean;
  Err: boolean;
@@ -325,7 +325,10 @@ end;
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.5  2001-10-09 02:42:05  carl
+  Revision 1.6  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.5  2001/10/09 02:42:05  carl
   * bugfix #1639 (IsMultiThread varialbe setting)
   * bugfix #1639 (IsMultiThread varialbe setting)
 
 
   Revision 1.4  2001/02/04 01:53:58  hajny
   Revision 1.4  2001/02/04 01:53:58  hajny

+ 5 - 2
rtl/unix/sysunixh.inc

@@ -24,7 +24,7 @@ type
    { the fields of this record are os dependent  }
    { the fields of this record are os dependent  }
    { and they shouldn't be used in a program     }
    { and they shouldn't be used in a program     }
    { only the type TCriticalSection is important }
    { only the type TCriticalSection is important }
-   TCriticalSection = packed record
+   TRTLCriticalSection = packed record
       DebugInfo : pointer;
       DebugInfo : pointer;
       LockCount : longint;
       LockCount : longint;
       RecursionCount : longint;
       RecursionCount : longint;
@@ -73,7 +73,10 @@ var
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.11  2001-10-14 13:33:21  peter
+  Revision 1.12  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.11  2001/10/14 13:33:21  peter
     * start of thread support for linux
     * start of thread support for linux
 
 
   Revision 1.10  2001/06/27 21:37:39  peter
   Revision 1.10  2001/06/27 21:37:39  peter

+ 8 - 5
rtl/unix/thread.inc

@@ -162,20 +162,20 @@
         EndThread(0);
         EndThread(0);
       end;
       end;
 
 
-    procedure InitCriticalSection(var cs : tcriticalsection);
+    procedure InitCriticalSection(var cs : TRTLCriticalSection);
       begin
       begin
       end;
       end;
 
 
-    procedure DoneCriticalSection(var cs : tcriticalsection);
+    procedure DoneCriticalSection(var cs : TRTLCriticalSection);
       begin
       begin
       end;
       end;
 
 
 
 
-    procedure EnterCriticalSection(var cs : tcriticalsection);
+    procedure EnterCriticalSection(var cs : TRTLCriticalSection);
       begin
       begin
       end;
       end;
 
 
-    procedure LeaveCriticalSection(var cs : tcriticalsection);
+    procedure LeaveCriticalSection(var cs : TRTLCriticalSection);
       begin
       begin
       end;
       end;
 
 
@@ -183,7 +183,10 @@
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.1  2001-10-17 10:27:47  marco
+  Revision 1.2  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.1  2001/10/17 10:27:47  marco
    * Moved to unix/ since there is nothing linux specific about it.
    * Moved to unix/ since there is nothing linux specific about it.
 
 
   Revision 1.1  2001/10/14 13:33:20  peter
   Revision 1.1  2001/10/14 13:33:20  peter

+ 5 - 2
rtl/win32/system.pp

@@ -41,7 +41,7 @@ type
    { the fields of this record are os dependent  }
    { the fields of this record are os dependent  }
    { and they shouldn't be used in a program     }
    { and they shouldn't be used in a program     }
    { only the type TCriticalSection is important }
    { only the type TCriticalSection is important }
-   TCriticalSection = packed record
+   TRTLCriticalSection = packed record
       DebugInfo : pointer;
       DebugInfo : pointer;
       LockCount : longint;
       LockCount : longint;
       RecursionCount : longint;
       RecursionCount : longint;
@@ -1567,7 +1567,10 @@ end.
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.18  2001-10-09 02:37:29  carl
+  Revision 1.19  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.18  2001/10/09 02:37:29  carl
   * bugfix #1639 (IsMultiThread varialbe setting)
   * bugfix #1639 (IsMultiThread varialbe setting)
 
 
   Revision 1.17  2001/08/19 21:02:02  florian
   Revision 1.17  2001/08/19 21:02:02  florian

+ 8 - 5
rtl/win32/thread.inc

@@ -197,23 +197,26 @@ procedure EndThread;
 
 
 { we implement these procedures for win32 by importing them }
 { we implement these procedures for win32 by importing them }
 { directly from windows                                     }
 { directly from windows                                     }
-procedure InitCriticalSection(var cs : tcriticalsection);
+procedure InitCriticalSection(var cs : TRTLCriticalSection);
   external 'kernel32' name 'InitializeCriticalSection';
   external 'kernel32' name 'InitializeCriticalSection';
 
 
-procedure DoneCriticalSection(var cs : tcriticalsection);
+procedure DoneCriticalSection(var cs : TRTLCriticalSection);
   external 'kernel32' name 'DeleteCriticalSection';
   external 'kernel32' name 'DeleteCriticalSection';
 
 
-procedure EnterCriticalSection(var cs : tcriticalsection);
+procedure EnterCriticalSection(var cs : TRTLCriticalSection);
   external 'kernel32' name 'EnterCriticalSection';
   external 'kernel32' name 'EnterCriticalSection';
 
 
-procedure LeaveCriticalSection(var cs : tcriticalsection);
+procedure LeaveCriticalSection(var cs : TRTLCriticalSection);
   external 'kernel32' name 'LeaveCriticalSection';
   external 'kernel32' name 'LeaveCriticalSection';
 
 
 {$endif MT}
 {$endif MT}
 
 
 {
 {
   $Log$
   $Log$
-  Revision 1.5  2001-10-09 02:38:39  carl
+  Revision 1.6  2001-10-23 21:51:03  peter
+    * criticalsection renamed to rtlcriticalsection for kylix compatibility
+
+  Revision 1.5  2001/10/09 02:38:39  carl
   * bugfix #1639 (IsMultiThread varialbe setting)
   * bugfix #1639 (IsMultiThread varialbe setting)
 
 
   Revision 1.4  2001/01/26 21:02:21  florian
   Revision 1.4  2001/01/26 21:02:21  florian