diff --git a/components/lazutils/fileutil.inc b/components/lazutils/fileutil.inc index 2a4b0fd802..71a4701f82 100644 --- a/components/lazutils/fileutil.inc +++ b/components/lazutils/fileutil.inc @@ -1156,21 +1156,27 @@ begin begin OtherDir:=SearchDirectories[i]; if (CompareFilenames(Dir,OtherDir)=0) - or (FileIsInPath(Dir,OtherDir)) then + or (ASearchSubDirs and (FileIsInPath(Dir,OtherDir))) then begin // directory Dir is already searched Dir:=''; break; end; - if FileIsInPath(OtherDir,Dir) then + if ASearchSubDirs and FileIsInPath(OtherDir,Dir) then // directory Dir includes the old directory => delete SearchDirectories.Delete(i); end; if Dir<>'' then SearchDirectories.Add(Dir); end; - for i:=0 to SearchDirectories.Count-1 do - DoSearch(AppendPathDelim(SearchDirectories[i]), 0); + //Search currentdirectory if ASearchPath = '' + if (SearchDirectories.Count=0) then + DoSearch('',0) + else + begin + for i:=0 to SearchDirectories.Count-1 do + DoSearch(AppendPathDelim(SearchDirectories[i]), 0); + end; finally SearchDirectories.Free; FSearching := False;