diff options
-rw-r--r-- | rtl/objpas/classes/reader.inc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/rtl/objpas/classes/reader.inc b/rtl/objpas/classes/reader.inc index 3f19bdf49f..1a37021a64 100644 --- a/rtl/objpas/classes/reader.inc +++ b/rtl/objpas/classes/reader.inc @@ -609,24 +609,32 @@ begin If (Stream=Nil) then Raise EReadError.Create(SEmptyStreamIllegalReader); FDriver := CreateDriver(Stream, BufSize); +{$ifdef FPC_HAS_FEATURE_THREADING} InitCriticalSection(FLock); +{$ENDIF} end; destructor TReader.Destroy; begin +{$ifdef FPC_HAS_FEATURE_THREADING} DoneCriticalSection(FLock); +{$ENDIF} FDriver.Free; inherited Destroy; end; procedure TReader.Lock; begin +{$ifdef FPC_HAS_FEATURE_THREADING} EnterCriticalSection(FLock); +{$ENDIF} end; procedure TReader.Unlock; begin +{$ifdef FPC_HAS_FEATURE_THREADING} LeaveCriticalSection(FLock); +{$ENDIF} end; procedure TReader.FlushBuffer; |