source:
MicroThreading/Patch/FPC 2.4.2.patch
Last change on this file was 225, checked in by , 14 years ago | |
---|---|
File size: 2.6 KB |
-
rtl/inc/except.inc
26 26 cFinalizeFrame = 2; 27 27 28 28 Type 29 PExceptAddr = ^TExceptAddr;30 TExceptAddr = record31 buf : pjmp_buf;32 next : PExceptAddr;33 frametype : Longint;34 end;35 29 36 30 TExceptObjectClass = Class of TObject; 37 31 … … 48 42 end; 49 43 50 44 45 // Used for microthreading context switching 46 47 Function GetExceptionAddrStack : PExceptAddr; 48 begin 49 Result := ExceptAddrStack; 50 end; 51 52 Function GetExceptionObjectStack : PExceptObject; 53 begin 54 Result := ExceptObjectStack; 55 end; 56 57 procedure SetExceptionAddrStack(Value : PExceptAddr); 58 begin 59 ExceptAddrStack := Value; 60 end; 61 62 procedure SetExceptionObjectStack(Value : PExceptObject); 63 begin 64 ExceptObjectStack := Value; 65 end; 66 67 51 68 function AcquireExceptionObject: Pointer; 52 69 var 53 70 _ExceptObjectStack : PExceptObject; -
rtl/inc/objpash.inc
141 141 D4 : array[0..7] of byte; 142 142 ); 143 143 3 : ( { uuid fields according to RFC4122 } 144 time_low : dword; 144 time_low : dword; // The low field of the timestamp 145 145 time_mid : word; // The middle field of the timestamp 146 146 time_hi_and_version : word; // The high field of the timestamp multiplexed with the version number 147 147 clock_seq_hi_and_reserved : byte; // The high field of the clock sequence multiplexed with the variant … … 326 326 Frames : PPointer; 327 327 end; 328 328 329 Const 329 330 PExceptAddr = ^TExceptAddr; 331 TExceptAddr = record 332 buf : pjmp_buf; 333 next : PExceptAddr; 334 frametype : Longint; 335 end; 336 337 Const 330 338 ExceptProc : TExceptProc = Nil; 331 339 RaiseProc : TExceptProc = Nil; 332 340 RaiseMaxFrameCount : Longint = 16; 333 341 334 342 Function RaiseList : PExceptObject; 343 344 // Used for microthreading context switching 345 Function GetExceptionAddrStack : PExceptAddr; 346 Function GetExceptionObjectStack : PExceptObject; 347 procedure SetExceptionAddrStack(Value : PExceptAddr); 348 procedure SetExceptionObjectStack(Value : PExceptObject); 335 349 336 350 { @abstract(increase exception reference count) 337 351 When leaving an except block, the exception object is normally
Note:
See TracBrowser
for help on using the repository browser.