Skip to content

Commit a81a2c1

Browse files
bwilkersoncommit-bot@chromium.org
authored andcommitted
Guard against exception in fix processor when URI is invalid (issue 32276)
Change-Id: I5902ab5f260941f0da3a751a03783999737319f1 Reviewed-on: https://dart-review.googlesource.com/43202 Reviewed-by: Konstantin Shcheglov <[email protected]> Commit-Queue: Brian Wilkerson <[email protected]>
1 parent 1b9b488 commit a81a2c1

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

pkg/analysis_server/lib/src/services/correction/fix_internal.dart

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import 'package:analyzer/dart/ast/token.dart';
2424
import 'package:analyzer/dart/element/element.dart';
2525
import 'package:analyzer/dart/element/type.dart';
2626
import 'package:analyzer/error/error.dart';
27+
import 'package:analyzer/exception/exception.dart';
2728
import 'package:analyzer/file_system/file_system.dart';
2829
import 'package:analyzer/src/dart/analysis/driver.dart';
2930
import 'package:analyzer/src/dart/analysis/top_level_declaration.dart';
@@ -1513,13 +1514,17 @@ class FixProcessor {
15131514
String file = source.fullName;
15141515
if (isAbsolute(file) && AnalysisEngine.isDartFileName(file)) {
15151516
String libName = _computeLibraryName(file);
1516-
DartChangeBuilder changeBuilder = new DartChangeBuilder(session);
1517-
await changeBuilder.addFileEdit(source.fullName,
1518-
(DartFileEditBuilder builder) {
1519-
builder.addSimpleInsertion(0, 'library $libName;$eol$eol');
1520-
});
1521-
_addFixFromBuilder(changeBuilder, DartFixKind.CREATE_FILE,
1522-
args: [source.shortName]);
1517+
try {
1518+
DartChangeBuilder changeBuilder = new DartChangeBuilder(session);
1519+
await changeBuilder.addFileEdit(source.fullName,
1520+
(DartFileEditBuilder builder) {
1521+
builder.addSimpleInsertion(0, 'library $libName;$eol$eol');
1522+
});
1523+
_addFixFromBuilder(changeBuilder, DartFixKind.CREATE_FILE,
1524+
args: [source.shortName]);
1525+
} on AnalysisException {
1526+
// Ignore the exception and just don't create a fix.
1527+
}
15231528
}
15241529
}
15251530
}

0 commit comments

Comments
 (0)