X64-Question in TGpHugeFile: BufOffs maybe too short
- Dominant language
- Pascal
- Stars
- 190
- Forks
- 63
- PR merge metrics
- No merged PRs in 30d
Description
```
In Unit GpHugeF.pas
the class (and some functions) use a Buffer-Offset. But this offset is defined
as DWORD.
Is there any possibility in X64 and very large files (I have >3GB-Files), that
the BufOffset is too small?
TGpHugeFile = class
private
hfAsynchronous : boolean;
hfBlockSize : DWORD;
(...)
hfBufFilePos : HugeInt; //cached FilePos (according the current hfBufOffs)
hfBufOffs : DWORD; //current position inside the buffer
Suggestion:
hfBufOffs : HugeInt;
```
Original issue reported on code.google.com by `mxxa2a...@gmail.com` on 25 Mar 2015 at 8:58
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with Unit GpHugeF.pas and inspect TGpHugeFile and the functions that use hfBufOffs, especially how buffer offsets relate to hfBufFilePos and large-file positions. Determine whether DWORD can truncate valid offsets on x64 or with files larger than 3 GB; done means documenting the result and changing the type only if the code and platform behavior require it.
Written by the indexing model from the issue text.
Assessment
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100