Jelajahi Sumber

* fixed memory stream compilation on 64 bit targets

git-svn-id: trunk@14523 -
florian 15 tahun lalu
induk
melakukan
42ae8bf971
2 mengubah file dengan 9 tambahan dan 9 penghapusan
  1. 4 4
      rtl/objpas/classes/classesh.inc
  2. 5 5
      rtl/objpas/classes/streams.inc

+ 4 - 4
rtl/objpas/classes/classesh.inc

@@ -871,8 +871,8 @@ type
     procedure SetPointer(Ptr: Pointer; ASize: PtrInt);
   public
     Function GetSize : Int64; Override;
-    function Read(var Buffer; Count: PtrInt): PtrInt; override;
-    function Seek(Offset: PtrInt; Origin: Word): PtrInt; override;
+    function Read(var Buffer; Count: LongInt): LongInt; override;
+    function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; override;
     procedure SaveToStream(Stream: TStream);
     procedure SaveToFile(const FileName: string);
     property Memory: Pointer read FMemory;
@@ -892,8 +892,8 @@ type
     procedure Clear;
     procedure LoadFromStream(Stream: TStream);
     procedure LoadFromFile(const FileName: string);
-    procedure SetSize(NewSize: PtrInt); override;
-    function Write(const Buffer; Count: PtrInt): PtrInt; override;
+    procedure SetSize({$ifdef CPU64}const{$endif CPU64} NewSize: PtrInt); override;
+    function Write(const Buffer; Count: LongInt): LongInt; override;
   end;
 
 { TStringStream }

+ 5 - 5
rtl/objpas/classes/streams.inc

@@ -515,7 +515,7 @@ begin
 end;
 
 
-function TCustomMemoryStream.Read(var Buffer; Count: PtrInt): PtrInt;
+function TCustomMemoryStream.Read(var Buffer; Count: LongInt): LongInt;
 
 begin
   Result:=0;
@@ -529,10 +529,10 @@ begin
 end;
 
 
-function TCustomMemoryStream.Seek(Offset: PtrInt; Origin: Word): PtrInt;
+function TCustomMemoryStream.Seek(const Offset: Int64; Origin: TSeekOrigin): Int64;
 
 begin
-  Case Origin of
+  Case Word(Origin) of
     soFromBeginning : FPosition:=Offset;
     soFromEnd       : FPosition:=FSize+Offset;
     soFromCurrent   : FPosition:=FPosition+Offset;
@@ -646,7 +646,7 @@ begin
 end;
 
 
-procedure TMemoryStream.SetSize(NewSize: PtrInt);
+procedure TMemoryStream.SetSize({$ifdef CPU64}const{$endif CPU64} NewSize: PtrInt);
 
 begin
   SetCapacity (NewSize);
@@ -655,7 +655,7 @@ begin
     FPosition:=FSize;
 end;
 
-function TMemoryStream.Write(const Buffer; Count: PtrInt): PtrInt;
+function TMemoryStream.Write(const Buffer; Count: LongInt): LongInt;
 
 Var NewPos : PtrInt;