From 2bae28ff63d34cbf2e3e8221ad0e7c315298ca64 Mon Sep 17 00:00:00 2001 From: Bart <9132501-flyingsheep@users.noreply.gitlab.com> Date: Tue, 6 Feb 2024 20:21:03 +0100 Subject: [PATCH] TFileSearcher: rename OnQueryDirectoruFound to OnQueryDirectoryEnter and only call it when deciding to enter a directory, not when one is found. --- components/lazutils/fileutil.inc | 19 ++++++++----------- components/lazutils/fileutil.pas | 6 +++--- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/components/lazutils/fileutil.inc b/components/lazutils/fileutil.inc index 291769a6f1..353ea8f453 100644 --- a/components/lazutils/fileutil.inc +++ b/components/lazutils/fileutil.inc @@ -782,11 +782,11 @@ begin FOnQueryFileFound(Self, Fn, Accept); end; -procedure TFileSearcher.DoQueryDirectoryFound(const Dir: String; +procedure TFileSearcher.DoQueryDirectoryEnter(const Dir: String; var Accept: Boolean); begin - if Assigned(FOnQueryDirectoryFound) then - FOnQueryDirectoryFound(Self, Dir, Accept); + if Assigned(FOnQueryDirectoryEnter) then + FOnQueryDirectoryEnter(Self, Dir, Accept); end; constructor TFileSearcher.Create; @@ -816,7 +816,7 @@ var function AcceptDir(const Dir: String): Boolean; begin Result := True; - DoQueryDirectoryFound(Dir, Result); + DoQueryDirectoryEnter(Dir, Result); end; var @@ -842,13 +842,10 @@ var end; end else begin // Directory - if AcceptDir(AppendPathDelim(ExpandFilenameUtf8(APath + PathInfo.Name))) then - begin - FPath := APath; - FLevel := ALevel; - FFileInfo := PathInfo; - DoDirectoryFound; - end; + FPath := APath; + FLevel := ALevel; + FFileInfo := PathInfo; + DoDirectoryFound; end; until (FindNextUTF8(PathInfo) <> 0) or not FSearching; diff --git a/components/lazutils/fileutil.pas b/components/lazutils/fileutil.pas index b3e48aa6fa..5930b5ea05 100644 --- a/components/lazutils/fileutil.pas +++ b/components/lazutils/fileutil.pas @@ -138,7 +138,7 @@ type FFileAttribute: Word; FDirectoryAttribute: Word; FOnQueryFileFound: TQueryFileFoundEvent; - FOnQueryDirectoryFound: TQueryDirectoryFoundEvent; + FOnQueryDirectoryEnter: TQueryDirectoryFoundEvent; FCircularLinkDetection: Boolean; VisitedDirs: TFPStringHashTable; procedure RaiseSearchingError; @@ -147,7 +147,7 @@ type procedure DoDirectoryFound; virtual; procedure DoFileFound; virtual; procedure DoQueryFileFound(const Fn: String; var Accept: Boolean); - procedure DoQueryDirectoryFound(const Dir: String; var Accept: Boolean); + procedure DoQueryDirectoryEnter(const Dir: String; var Accept: Boolean); public constructor Create; procedure Search(const ASearchPath: String; const ASearchMask: String = ''; @@ -163,7 +163,7 @@ type property OnFileFound: TFileFoundEvent read FOnFileFound write FOnFileFound; property OnDirectoryEnter: TDirectoryEnterEvent read FOnDirectoryEnter write FOnDirectoryEnter; property OnQueryFileFound: TQueryFileFoundEvent read FOnQueryFileFound write FOnQueryFileFound; - property OnQueryDirectoryFound: TQueryDirectoryFoundEvent read FOnQueryDirectoryFound write FOnQueryDirectoryFound; + property OnQueryDirectoryEnter: TQueryDirectoryFoundEvent read FOnQueryDirectoryEnter write FOnQueryDirectoryEnter; end; { TListFileSearcher }