procedure FindAllFiles(AList: TStrings; const SearchPath: String; Searcher.Search(SearchPath, SearchMask, SearchSubDirs); Here we miss parameter "CaseSensitive=False". So on Linux it is False and function does case-insens search. It is slower! Why not to add param True for Unix. Not sure about macOS. -- Regards, Alexey