+ FileNameCasePreserving added - see #18066 in Mantis

git-svn-id: trunk@20894 -
This commit is contained in:
Tomas Hajny 2012-04-15 20:56:13 +00:00
parent fc673340fe
commit d442d14e0c
19 changed files with 45 additions and 22 deletions

View File

@ -45,7 +45,7 @@ const
AllowDriveSeparators : set of char = [':'];
{$endif FPC_HAS_FEATURE_FILEIO}
{ FileNameCaseSensitive is defined below! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined below! }
{$ifdef FPC_HAS_FEATURE_EXITCODE}
maxExitCode = 255;
@ -61,6 +61,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = true;
FileNameCasePreserving: boolean = true;
{$endif FPC_HAS_FEATURE_FILEIO}
{$ifdef FPC_HAS_FEATURE_TEXTIO}
CtrlZMarksEOF: boolean = false; (* #26 not considered as end of file *)

View File

@ -33,7 +33,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 255;
MaxPathLen = 256;
AllFilesMask = '*';
@ -85,6 +85,7 @@ const UnusedHandle=-1;
LFNSupport: boolean = true;
FileNameCaseSensitive: boolean = false;
FileNameCasePreserving: boolean = false;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;
@ -555,6 +556,7 @@ begin
ProcessID := PIB^.PID;
ThreadID := TIB^.TIB2^.TID;
IsConsole := ApplicationType <> 3;
FileNameCasePreserving := true;
end;
osDPMI:
begin

View File

@ -43,6 +43,7 @@ const
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
FileNameCaseSensitive = false;
FileNameCasePreserving = true;
maxExitCode = 255;
MaxPathLen = 255;
AllFilesMask = '*';

View File

@ -43,7 +43,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 255;
MaxPathLen = 256;
@ -55,6 +55,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = false;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;
@ -668,7 +669,7 @@ Begin
LFNSupport:=CheckLFN;
if LFNSupport then
begin
FileNameCaseSensitive:=true;
FileNameCasePreserving:=true;
AllFilesMask := '*';
end
else

View File

@ -119,7 +119,7 @@ begin
{$ENDIF FPC_FEXPAND_UNC}
(* First convert the path to uppercase if appropriate for current platform. *)
if FileNameCaseSensitive then
if FileNameCasePreserving then
Pa := Path
else
Pa := UpCase (Path);

View File

@ -5207,6 +5207,7 @@ function FExpand (const Path: PathStr): PathStr;
const
LFNSupport = true;
FileNameCaseSensitive = true;
FileNameCasePreserving = true;
{$I fexpand.inc}

View File

@ -47,6 +47,7 @@ const
StdErrorHandle : LongInt = 0;
FileNameCaseSensitive : Boolean = False;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = false; { #26 not considered as end of file }
sLineBreak = LineEnding;

View File

@ -49,7 +49,7 @@ const
AllowDirectorySeparators : set of char = ['\'];
AllowDriveSeparators : set of char = [];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = High(ErrorCode);
MaxPathLen = High(Word);
AllFilesMask = '*';
@ -87,6 +87,7 @@ const
const
// NT is case sensitive
FileNameCaseSensitive : boolean = true;
FileNameCasePreserving: boolean = true;
// todo: check whether this is really the case on NT
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)

View File

@ -57,6 +57,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = true;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -44,7 +44,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 255;
MaxPathLen = 256;
AllFilesMask = '*';
@ -57,6 +57,7 @@ CONST
StdErrorHandle : THandle = 0;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true; (* Not really correct on older Netware versions without the LFN support switched on... *)
CtrlZMarksEOF: boolean = false; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -49,7 +49,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = $ffff;
MaxPathLen = 256;
AllFilesMask = '*';
@ -62,6 +62,7 @@ CONST
StdErrorHandle : THandle = 0;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = false; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -41,7 +41,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
MaxExitCode = 65535;
MaxPathLen = 256;
AllFilesMask = '*';
@ -58,6 +58,7 @@ const UnusedHandle=-1;
LFNSupport: boolean = true;
FileNameCaseSensitive: boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;
@ -1084,6 +1085,9 @@ var TIB: PThreadInfoBlock;
const
DosCallsName: array [0..8] of char = 'DOSCALLS'#0;
{$IFDEF OS2UNICODE}
{$I sysucode.inc}
{$ENDIF OS2UNICODE}
{*var}
{* ST: pointer;}
@ -1179,9 +1183,10 @@ begin
SysInitExceptions;
fpc_cpucodeinit;
{$ifdef HASWIDESTRING}
InitUnicodeStringManager;
{$endif HASWIDESTRING}
{$ifdef OS2UCODE}
InitOS2WideStrings;
{$endif OS2UCODE}
{ ... and I/O }
SysInitStdIO;

View File

@ -36,7 +36,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below }
maxExitCode = 65535;
MaxPathLen = 260;
AllFilesMask = '*';
@ -55,7 +55,8 @@ const
StdOutputHandle : THandle = 0;
StdErrorHandle : THandle = 0;
FileNameCaseSensitive : boolean = true;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -33,7 +33,7 @@ const
PathSeparator = ':';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [];
{ FileNameCaseSensitive is defined below! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined below! }
maxExitCode = 255;
{$ifdef LINUX}
MaxPathLen = 4096; // linux has always got to be BIGGER
@ -49,6 +49,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = true;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = false; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -36,7 +36,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 255;
MaxPathLen = 256;
@ -48,6 +48,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = false;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;
@ -773,7 +774,7 @@ Begin
LFNSupport:=CheckLFN;
if LFNSupport then
begin
FileNameCaseSensitive:=true;
FileNameCasePreserving:=true;
AllFilesMask := '*';
end
else

View File

@ -51,6 +51,7 @@ const
StdErrorHandle = 2;
FileNameCaseSensitive : boolean = true;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 not considered as end of file *)
sLineBreak = LineEnding;

View File

@ -42,7 +42,7 @@ const
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 65535;
MaxPathLen = 260;
AllFilesMask = '*';
@ -61,7 +61,8 @@ const
StdOutputHandle : THandle = 0;
StdErrorHandle : THandle = 0;
FileNameCaseSensitive : boolean = true;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;

View File

@ -43,7 +43,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 65535;
MaxPathLen = 260;
AllFilesMask = '*';
@ -63,7 +63,8 @@ const
StdErrorHandle : THandle = 0;
System_exception_frame : PEXCEPTION_FRAME =nil;
FileNameCaseSensitive : boolean = true;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;

View File

@ -39,7 +39,7 @@ const
PathSeparator = ';';
AllowDirectorySeparators : set of char = ['\','/'];
AllowDriveSeparators : set of char = [':'];
{ FileNameCaseSensitive is defined separately below!!! }
{ FileNameCaseSensitive and FileNameCasePreserving are defined separately below!!! }
maxExitCode = 65535;
MaxPathLen = 260;
AllFilesMask = '*';
@ -51,7 +51,8 @@ const
StdOutputHandle : THandle = 0;
StdErrorHandle : THandle = 0;
FileNameCaseSensitive : boolean = true;
FileNameCaseSensitive : boolean = false;
FileNameCasePreserving: boolean = true;
CtrlZMarksEOF: boolean = true; (* #26 is considered as end of file *)
sLineBreak = LineEnding;