removed calls to obsolete lowercasetable

git-svn-id: trunk@12939 -
This commit is contained in:
mattias 2007-11-20 21:39:47 +00:00
parent 052bfaa663
commit 98de83d78f
3 changed files with 17 additions and 40 deletions

View File

@ -219,7 +219,6 @@ procedure RaiseException(const Msg: string);
procedure FreeThenNil(var Obj: TObject);
function CompareCaret(const FirstCaret, SecondCaret: TPoint): integer;
function CompareBoolean(b1, b2: boolean): integer;
function CompareStringPointerI(Data1, Data2: Pointer): integer;
procedure CheckList(List: TList; TestListNil, TestDoubles, TestNils: boolean);
procedure CheckList(List: TFPList; TestListNil, TestDoubles, TestNils: boolean);
procedure CheckEmptyListCut(List1, List2: TList);
@ -1295,37 +1294,6 @@ begin
Result:=-1;
end;
function CompareStringPointerI(Data1, Data2: Pointer): integer;
var
S1: PChar;
S2: PChar;
c1: Integer;
c2: Integer;
begin
if (Data1=nil) then begin
if Data2=nil then begin
Result:=0;
end else begin
Result:=-1;
end;
end else begin
if Data2=nil then begin
Result:=1;
end else begin
S1:=PChar(Data1);
S2:=PChar(Data2);
repeat
c1:=Ord(S1[0]);
c2:=Ord(S2[0]);
Result:=Ord(LowerCaseTable[c1])-Ord(LowerCaseTable[c2]); //!! Must be replaced by ansi characters !!
if (Result<>0) or (c1=0) or (c2=0) then exit;
Inc(S1);
Inc(S2);
until false;
end;
end;
end;
procedure RemoveDoubles(List: TStrings);
var
i: Integer;

View File

@ -29,6 +29,10 @@ uses
// For Smart Linking: Do not use the LCL!
Classes, SysUtils, LCLStrConsts;
{$ifdef Windows}
{$define CaseInsensitiveFilenames}
{$endif}
const
UTF8FileHeader = #$ef#$bb#$bf;

View File

@ -39,7 +39,7 @@ end;
------------------------------------------------------------------------------}
function CompareFilenames(const Filename1, Filename2: string): integer;
begin
{$IFDEF WINDOWS}
{$IFDEF CaseInsensitiveFilenames}
Result:=AnsiCompareText(Filename1, Filename2);
{$ELSE}
Result:=CompareStr(Filename1, Filename2);
@ -72,7 +72,9 @@ function CompareFilenames(Filename1: PChar; Len1: integer;
var
File1: string;
File2: string;
{$IFNDEF CaseInsensitiveFilenames}
i: Integer;
{$ENDIF}
begin
if (Len1=0) or (Len2=0) then begin
Result:=Len1-Len2;
@ -83,22 +85,25 @@ begin
Move(Filename1^,File1[1],Len1);
SetLength(File2,Len2);
Move(Filename2^,File2[1],Len2);
Result:=CompareFilenames(File1,File2);
Result:=CompareFilenames(File1,File2,true);
end else begin
{$IFDEF CaseInsensitiveFilenames}
SetLength(File1,Len1);
Move(Filename1^,File1[1],Len1);
SetLength(File2,Len2);
Move(Filename2^,File2[1],Len2);
Result:=CompareFilenames(File1,File2);
{$ELSE}
Result:=0;
i:=0;
while (Result=0) and ((i<Len1) and (i<Len2)) do begin
{$IFDEF WINDOWS}
Result:=Ord(LowerCaseTable[Ord(Filename1[i])])
-Ord(LowerCaseTable[Ord(Filename2[i])]); //!! Must be replaced by ansi characters !!
{$ELSE}
Result:=Ord(Filename1[i])
-Ord(Filename2[i]); //!! Must be replaced by ansi characters !!
{$ENDIF}
-Ord(Filename2[i]);
Inc(i);
end;
if Result=0 Then
Result:=Len1-Len2;
{$ENDIF}
end;
end;