Hi,
Is this a bug in FPC 3.2.0 where TCustomStream still uses LongInt in the Read() method, where all other methods in in the class uses Int64 type?
Here is the FPC code:
TCustomMemoryStream = class(TStream)
private
FMemory: Pointer;
FSize, FPosition: PtrInt;
protected
Function GetSize : Int64; Override;
function GetPosition: Int64; Override;
procedure SetPointer(Ptr: Pointer; ASize: PtrInt);
public
function Read(var Buffer; Count: LongInt): LongInt; override; // <-- Here
function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; override;
...
end;As this class extends the TStream class, I guess the issue relates to TStream too.
eg: Why would you have GetSize(): Int64; or GetPosition: Int64; but when you read data, it is limited to the Longint type?
Regards,
Graeme
