commit | 50dfbe957959aaa295b6c69e961d8d8b155781f9 | [log] [tgz] |
---|---|---|
author | Nicholas Shahan <nshahan@google.com> | Thu Sep 10 01:02:46 2020 +0000 |
committer | commit-bot@chromium.org <commit-bot@chromium.org> | Thu Sep 10 01:02:46 2020 +0000 |
tree | dca58bc23c6b190783120888ea9bcd0361ff5e42 | |
parent | 4d72ed38b80a7d6d377b92747868dbd392a058c5 [diff] |
[ddc] Escape type name identifiers Avoids a compiler crash if invalid characters in the type names leak from the CFE. Change-Id: I3c9a9fcfd2ac6ef4f7ef5593a53d6f936653955e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/162260 Reviewed-by: Mark Zhou <markzipan@google.com> Commit-Queue: Nicholas Shahan <nshahan@google.com>
diff --git a/pkg/dev_compiler/lib/src/kernel/type_table.dart b/pkg/dev_compiler/lib/src/kernel/type_table.dart index 8421a66..8f8a002 100644 --- a/pkg/dev_compiler/lib/src/kernel/type_table.dart +++ b/pkg/dev_compiler/lib/src/kernel/type_table.dart
@@ -123,7 +123,7 @@ /// Heuristically choose a good name for the cache and generator /// variables. js_ast.TemporaryId chooseTypeName(DartType type) { - return js_ast.TemporaryId(_typeString(type)); + return js_ast.TemporaryId(escapeIdentifier(_typeString(type))); } }