LazFileUtils: Fix FileExistsUTF8 on Windows when FileName contains uncode

characters outside current codepage.

git-svn-id: trunk@41283 -
This commit is contained in:
bart 2013-05-19 12:17:03 +00:00
parent 0a3ee817e7
commit 0986ec79fe
3 changed files with 17 additions and 4 deletions

View File

@ -1062,10 +1062,7 @@ begin
end;
end;
function FileExistsUTF8(const Filename: string): boolean;
begin
Result:=SysUtils.FileExists(UTF8ToSys(Filename));
end;
function FileAgeUTF8(const FileName: String): Longint;
begin

View File

@ -36,6 +36,11 @@ begin
InvalidateFileStateCache(Filename);
end;
function FileExistsUTF8(const Filename: string): boolean;
begin
Result:=SysUtils.FileExists(UTF8ToSys(Filename));
end;
function ExpandFileNameUtf8(const FileName: string; {const} BaseDir: String = ''): String;
var
IsAbs: Boolean;

View File

@ -181,6 +181,17 @@ begin
InvalidateFileStateCache(Filename);
end;
function FileExistsUTF8(const Filename: string): boolean;
var
Attr: Longint;
begin
Attr := _FileGetAttrUTF8(FileName);
if Attr <> -1 then
Result:= (Attr and FILE_ATTRIBUTE_DIRECTORY) = 0
else
Result:=False;
end;
{******* ANSI functions *******}