fix #3116
This commit is contained in:
parent
8add90aca0
commit
8cca068f01
|
|
@ -2739,16 +2739,19 @@ namespace PascalABCCompiler
|
|||
|
||||
if (!PCUFileNamesDictionary.TryGetValue(cacheKey, out var fileNameWithPriority))
|
||||
{
|
||||
if (FindFileWithExtensionInDirs(fileName, out _, currentPath) is string resultFileName1)
|
||||
if (Path.GetExtension(fileName) != CompilerOptions.CompiledUnitExtension)
|
||||
fileNameWithPriority = null;
|
||||
|
||||
else if (FindFileWithExtensionInDirs(fileName, out _, currentPath) is string resultFileName1)
|
||||
fileNameWithPriority = Tuple.Create(resultFileName1, 1);
|
||||
else if (FindFileWithExtensionInDirs(Path.GetFileName(fileName), out _, CompilerOptions.OutputDirectory) is string resultFileName2)
|
||||
else if (CompilerOptions.OutputDirectory != project.Path && FindFileWithExtensionInDirs(Path.GetFileName(fileName), out _, CompilerOptions.OutputDirectory) is string resultFileName2)
|
||||
fileNameWithPriority = Tuple.Create(resultFileName2, 2);
|
||||
else if (FindFileWithExtensionInDirs(fileName, out var dirIndex, CompilerOptions.SearchDirectories.ToArray()) is string resultFileName3)
|
||||
fileNameWithPriority = Tuple.Create(resultFileName3, 3 + dirIndex);
|
||||
else
|
||||
fileNameWithPriority = null;
|
||||
|
||||
PCUFileNamesDictionary[cacheKey] = fileNameWithPriority;
|
||||
PCUFileNamesDictionary[cacheKey] = fileNameWithPriority;
|
||||
}
|
||||
|
||||
folderPriority = fileNameWithPriority?.Item2 ?? 0;
|
||||
|
|
@ -2760,8 +2763,9 @@ namespace PascalABCCompiler
|
|||
var cacheKey = Tuple.Create(fileName.ToLower(), currentPath?.ToLower());
|
||||
|
||||
if (!SourceFileNamesDictionary.TryGetValue(cacheKey, out var fileNameWithPriority))
|
||||
{
|
||||
if (FindSourceFileNameInDirs(fileName, out _, currentPath) is string resultFileName1)
|
||||
{
|
||||
|
||||
if (FindSourceFileNameInDirs(fileName, out _, currentPath) is string resultFileName1)
|
||||
fileNameWithPriority = Tuple.Create(resultFileName1, 1);
|
||||
else if (FindSourceFileNameInDirs(fileName, out var dirIndex, CompilerOptions.SearchDirectories.ToArray()) is string resultFileName2)
|
||||
fileNameWithPriority = Tuple.Create(resultFileName2, 3 + dirIndex);
|
||||
|
|
|
|||
Loading…
Reference in a new issue