Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Unified Diff: pkg/analyzer/lib/source/analysis_options_provider.dart

Issue 2981553002: AnalysisOptionsProvider.getOptionsFile() should return only existing files. (Closed)
Patch Set: Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/analysis_server/test/domain_diagnostic_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/lib/source/analysis_options_provider.dart
diff --git a/pkg/analyzer/lib/source/analysis_options_provider.dart b/pkg/analyzer/lib/source/analysis_options_provider.dart
index 265d7e82d3e93a1886835f62acc872f14f7797b1..8c47f0731896f85c277740199b8d682b6b7cbc61 100644
--- a/pkg/analyzer/lib/source/analysis_options_provider.dart
+++ b/pkg/analyzer/lib/source/analysis_options_provider.dart
@@ -30,7 +30,11 @@ class AnalysisOptionsProvider {
/// and remove the include directive from the resulting options map.
/// Return an empty options map if the file does not exist.
Map<String, YamlNode> getOptions(Folder root, {bool crawlUp: false}) {
- return getOptionsFromFile(getOptionsFile(root, crawlUp: crawlUp));
+ File optionsFile = getOptionsFile(root, crawlUp: crawlUp);
+ if (optionsFile == null) {
+ return const <String, YamlNode>{};
+ }
+ return getOptionsFromFile(optionsFile);
}
/// Return the analysis options file from which options should be read, or
@@ -50,7 +54,10 @@ class AnalysisOptionsProvider {
break;
}
}
- return resource is File ? resource : null;
+ if (resource is File && resource.exists) {
+ return resource;
+ }
+ return null;
}
/// Provide the options found in [file].
« no previous file with comments | « pkg/analysis_server/test/domain_diagnostic_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698