FileUtil: inline FileSize to LazFileUtils.FileSizeUtf8.

git-svn-id: trunk@41295 -
This commit is contained in:
bart 2013-05-19 13:15:30 +00:00
parent 3b1ac2f83d
commit ef3320295a
4 changed files with 6 additions and 66 deletions

View File

@ -69,6 +69,11 @@ begin
Result := LazFileUtils.FileSetDateUTF8(FileName, Age);
end;
function FileSize(const Filename: string): int64;
begin
Result := LazFileUtils.FileSizeUtf8(FileName);
end;
{$IFDEF darwin}
function GetDarwinSystemFilename(Filename: string): string;
var

View File

@ -58,7 +58,7 @@ function FileIsText(const AFilename: string; out FileReadable: boolean): boolean
function FileIsExecutable(const AFilename: string): boolean;
function FileIsSymlink(const AFilename: string): boolean;
function FileIsHardLink(const AFilename: string): boolean;
function FileSize(const Filename: string): int64; overload;
function FileSize(const Filename: string): int64; overload; inline;
function GetFileDescription(const AFilename: string): string;
function ReadAllLinks(const Filename: string;
ExceptionOnError: boolean): string; // if a link is broken returns ''

View File

@ -123,20 +123,6 @@ begin
end;
{------------------------------------------------------------------------------
FileSize
------------------------------------------------------------------------------}
function FileSize(const Filename: string): int64;
var
st: baseunix.stat;
begin
if not fpstat(pointer(Filename),st{%H-})>=0 then
exit(-1);
Result:=st.st_size;
end;
{------------------------------------------------------------------------------
GetFileDescription
------------------------------------------------------------------------------}

View File

@ -197,50 +197,6 @@ begin
end;
{------------------------------------------------------------------------------
FileSize
------------------------------------------------------------------------------}
{$ifndef WinCE}
function FileSizeAnsi(const Filename: string): int64;
var
FindData: TWIN32FindDataA;
FindHandle: THandle;
Str: AnsiString;
begin
// Fix for the bug 14360:
// Don't assign the widestring to TSearchRec.name because it is of type
// string, which will generate a conversion to the system encoding
Str := Utf8ToAnsi(Filename);
FindHandle:=Windows.FindFirstFileA(PAnsiChar(Str), FindData);
if FindHandle=Windows.Invalid_Handle_value then
begin
Result:=-1;
exit;
end;
Result:=(int64(FindData.nFileSizeHigh) shl 32)+FindData.nFileSizeLow;
Windows.FindClose(FindHandle);
end;
{$endif}
function FileSizeWide(const Filename: string): int64;
var
FindData: TWIN32FindDataW;
FindHandle: THandle;
Str: WideString;
begin
// Fix for the bug 14360:
// Don't assign the widestring to TSearchRec.name because it is of type
// string, which will generate a conversion to the system encoding
Str := UTF8Decode(Filename);
FindHandle:=Windows.FindFirstFileW(PWideChar(Str), FindData);
if FindHandle=Windows.Invalid_Handle_value then
begin
Result:=-1;
exit;
end;
Result:=(int64(FindData.nFileSizeHigh) shl 32)+FindData.nFileSizeLow;
Windows.FindClose(FindHandle);
end;
{------------------------------------------------------------------------------
@ -490,7 +446,6 @@ begin
end;
var
FileSize_ : function (const Filename: string): int64 = @FileSizeWide;
FindFirst_ : function (const Path: string; Attr: Longint;
out Rslt: TSearchRec): Longint = @FindFirstWide;
FindNext_ : function (var Rslt: TSearchRec): Longint = @FindNextWide;
@ -505,11 +460,6 @@ var
function FileSize(const Filename: string): int64;
begin
Result:=FileSize_(FileName);
end;
function FindFirstUTF8(const Path: string; Attr: Longint; out Rslt: TSearchRec): Longint;
begin
@ -591,7 +541,6 @@ begin
{$ifndef WinCE}
if Win32MajorVersion <= 4 then
begin
FileSize_:=@FileSizeAnsi;
DeleteFile_:=@DeleteFileAnsi;
RenameFile_:=@RenameFileAnsi;
SetCurrentDir_:=@SetCurrentDirAnsi;