diff --git a/src/Analysis/Engine/Impl/Interpreter/Ast/AstModuleResolution.cs b/src/Analysis/Engine/Impl/Interpreter/Ast/AstModuleResolution.cs index 4ccf04d6b..5c5784e42 100644 --- a/src/Analysis/Engine/Impl/Interpreter/Ast/AstModuleResolution.cs +++ b/src/Analysis/Engine/Impl/Interpreter/Ast/AstModuleResolution.cs @@ -205,6 +205,12 @@ public async Task TryImportModuleAsync(string name, PathR } catch (OperationCanceledException) { _log?.Log(TraceLevel.Error, "ImportTimeout", name, "ImportFromSearchPaths"); return TryImportModuleResult.Timeout; + } catch (Exception ex) when ( + ex is IOException // FileNotFoundException, DirectoryNotFoundException, PathTooLongException, etc + || ex is UnauthorizedAccessException + ) { + _log?.Log(TraceLevel.Error, "ImportException", name, "ImportFromSearchPaths", ex.GetType().Name, ex.Message); + return TryImportModuleResult.NeedRetry; } }