commit | 81a7acc8b650675bbe7899fc45040b51a76ff540 | [log] [tgz] |
---|---|---|
author | FMorschel <fmorschel.dev@gmail.com> | Fri Nov 22 21:29:16 2024 +0000 |
committer | Commit Queue <dart-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Nov 22 21:29:16 2024 +0000 |
tree | 834fbeeccc246115f30541d8594e339756598aa7 | |
parent | de9f1491ae7c128686de66b1ff7df669d70f0183 [diff] |
[DAS] Fixes different aliased imports same element R=brianwilkerson@google.com Fixes https://github.com/dart-lang/sdk/issues/59584 Change-Id: I7038827ad0414e73e6af8f37f90d56cfcb6e76af Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/397000 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Commit-Queue: Samuel Rawlins <srawlins@google.com> Reviewed-by: Samuel Rawlins <srawlins@google.com> Auto-Submit: Felipe Morschel <fmorschel.dev@gmail.com>
diff --git a/pkg/analysis_server/lib/src/lsp/handlers/custom/handler_imports.dart b/pkg/analysis_server/lib/src/lsp/handlers/custom/handler_imports.dart index dc89d88..02c498a 100644 --- a/pkg/analysis_server/lib/src/lsp/handlers/custom/handler_imports.dart +++ b/pkg/analysis_server/lib/src/lsp/handlers/custom/handler_imports.dart
@@ -140,6 +140,8 @@ for (var directive in unit.directives.whereType<ImportDirective>()) { var import = directive.libraryImport; if (import == null) continue; + var importPrefix = directive.prefix?.name; + if (importPrefix != prefix) continue; var importedElement = prefix == null
diff --git a/pkg/analysis_server/test/lsp/import_test.dart b/pkg/analysis_server/test/lsp/import_test.dart index c5d4d5d..3ccc01a 100644 --- a/pkg/analysis_server/test/lsp/import_test.dart +++ b/pkg/analysis_server/test/lsp/import_test.dart
@@ -317,6 +317,20 @@ ); } + Future<void> test_import_multiple() async { + await _verifyGoToImports( + TestCode.parse(''' +import 'dart:async' as import1; +import 'dart:async' as import2; +/*[0*/import 'dart:async';/*0]*/ +/*[1*/import 'dart:core';/*1]*/ +import 'dart:math'; + +Futur^e<void>? f; +'''), + ); + } + Future<void> test_import_part() async { var otherFileUri = Uri.file(join(projectFolderPath, 'lib', 'other.dart')); var main = TestCode.parse('''