TFPGList<CodePointer> on archs/memory models where CodePointer is different
than Pointer. On archs/memory models where CodePointer = Pointer, TCodePtrList
is simply an alias of TList and the fgl unit isn't pulled in.
* the type of FindGlobalComponentList changed to TCodePtrList and the typecasts
from TFindGlobalComponent (procvar type) to Pointer changed to CodePointer.
This fixes compilation of unit classes in the i8086 medium memory model.
git-svn-id: trunk@25357 -
* greatly enhances clean performance over FSes with limited to no caching (networked file systems (eg. SSHFS), Amiga, etc)
* also an indentation fix
git-svn-id: trunk@25339 -
Format of saved data is changed as follows:
- Identification (start of file) changes from "BinBufDataset" (OLD version named 1.0) to "BinBufDataSet" (NEW version named 2.0)
- Just after Identification ("BinBufDataSet") is written one byte indicating version (for now it is 20 as 2.0)
- FieldDefs are saved in same format as in OLD format (nothing chages)
- Record header is saved in same format as in OLD format (nothing chages)
- Record data are saved field by field, where each field begins with 4 bytes indicating length of data, followed by data (here is used TField.AsBytes to get actual data)
Backward compatibility is keept in reading OLD format
When saving NEW format is always used
git-svn-id: trunk@25333 -
registry.pp, TRegistry:
* use FSysData to hold information whether we need to close the RootKey
winrec.inc, TRegistry:
+ add a TWinRegData type that holds the information whether the RootKey was explicitely opened by us
* SysRegCreate: allocate FSysData as PWinRegData
* SysRegFree: close the RootKey if necessary and free FSysData
+ RegistryConnect: implement for Win32/Win64; update RootKey only if RegConnectRegistry connects successfully, also the RootKey is now owned by us
* SetRootKey: update the RootKey only if it differs from previous value (avoids orphaning the key by doing a "reg.RootKey := reg.RootKey") and close the previous RootKey if it was owned by us
git-svn-id: trunk@25332 -
ncon.pas, tstringconstnode:
* buildderefimpl: don't build the deref if we don't need to
* derefimpl: do not try to resolve the deref if it wasn't stored at all
git-svn-id: trunk@25329 -
o does not use GOT
o enabled by default like for other Darwin platforms
- removed Darwin/ARM call stub support: no longer needed with current
Xcode versions (at least Xcode 4.2+), and we didn't support PIC
in them yet
git-svn-id: trunk@25325 -
rtl/nativent/sysutils.pp, FindNext:
* the UNICODE_STRING.Length and the FILE_DIRECTORY_INFORMATION.FileNameLength fields contain the amount of bytes, not the amount of characters, so move the correct amount of bytes
git-svn-id: branches/cpstrrtl@25319 -