mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-11-25 04:57:17 +01:00
+ codepage support for textrec/filerec and the above routines
* textrec/filerec now store the filename by default using widechar. It is
possible to switch back to ansichars using the FPC_ANSI_TEXTFILEREC define.
In that case, from now on the filename will always be stored in
DefaultFileSystemEncoding
* fixed potential buffer overflows and non-null-terminated file names in
textrec/filerec
+ dodirseparators(pwidechar), changed the dodirseparators(pchar/pwidechar)
parameters into var-parameters and gave those routines an extra parameter
that indicates whether the p(wide)char can be changed in place if
necessary or whether a copy must be made first (avoids us having to make
all strings always unique everywhere, because they might be changed on
some platforms via a pchar)
* do_open/do_erase/do_rename got extra boolean parameters indicating whether
the passed pchars point to data that can be freely changed (to pass on to
dodirseparators() if applicable)
* objects.pp: force assign(pchar) to be called, because
assign(array[0..255]) cannot choose between pchar and rawbytestring
versions (and removing the pchar version means that assign(pchar) will
be mapped to assign(shortstring) in {$h-})
* fixed up some routines in other units that depend on the format of
the textrec/filerec.name field
git-svn-id: branches/cpstrrtl@25137 -
|
||
|---|---|---|
| .. | ||
| scripts | ||
| aliasctp.inc | ||
| aliasptp.inc | ||
| baseunix.pp | ||
| bunxh.inc | ||
| bunxovl.inc | ||
| bunxovlh.inc | ||
| classes.pp | ||
| clocale.pp | ||
| convert.inc | ||
| crt.pp | ||
| cthreads.pp | ||
| ctypes.inc | ||
| cwstraix.inc | ||
| cwstring.pp | ||
| dl.pp | ||
| dos.pp | ||
| dynlibs.inc | ||
| errors.pp | ||
| fpmake.inc | ||
| genfdset.inc | ||
| genfunch.inc | ||
| genfuncs.inc | ||
| gensigset.inc | ||
| initc.pp | ||
| ipc.pp | ||
| ipccdecl.inc | ||
| keyboard.pp | ||
| lnfogdb.pp | ||
| mouse.pp | ||
| oscdecl.inc | ||
| oscdeclh.inc | ||
| ports.pp | ||
| printer.pp | ||
| serial.pp | ||
| settimeo.inc | ||
| sockets.pp | ||
| syscall.pp | ||
| syscgen.inc | ||
| sysdir.inc | ||
| sysfile.inc | ||
| sysheap.inc | ||
| sysunixh.inc | ||
| sysutils.pp | ||
| terminfo.pp | ||
| termiosh.inc | ||
| timezone.inc | ||
| tthread.inc | ||
| ttyname.inc | ||
| unix.pp | ||
| unixcp.pp | ||
| unixsockets.pas | ||
| unixtype.pp | ||
| unixutil.pp | ||
| unxdeclh.inc | ||
| unxovl.inc | ||
| unxovlh.inc | ||
| varutils.pp | ||
| video.pp | ||
| x86.pp | ||