| Index: pkg/analysis_server/lib/src/context_manager.dart
|
| diff --git a/pkg/analysis_server/lib/src/context_manager.dart b/pkg/analysis_server/lib/src/context_manager.dart
|
| index 272dafa90008dde32e97c6d4f9bd1a07b0519f40..434dc5a7bd2bed20267d1658601a8211244f486b 100644
|
| --- a/pkg/analysis_server/lib/src/context_manager.dart
|
| +++ b/pkg/analysis_server/lib/src/context_manager.dart
|
| @@ -15,6 +15,7 @@ import 'package:analyzer/file_system/file_system.dart';
|
| import 'package:analyzer/instrumentation/instrumentation.dart';
|
| import 'package:analyzer/plugin/options.dart';
|
| import 'package:analyzer/source/analysis_options_provider.dart';
|
| +import 'package:analyzer/source/embedder.dart';
|
| import 'package:analyzer/source/package_map_provider.dart';
|
| import 'package:analyzer/source/package_map_resolver.dart';
|
| import 'package:analyzer/source/path_filter.dart';
|
| @@ -1438,6 +1439,20 @@ class PackagesFileDisposition extends FolderDisposition {
|
| @override
|
| final Packages packages;
|
|
|
| + Map<String, List<Folder>> buildPackageMap(ResourceProvider resourceProvider) {
|
| + Map<String, List<Folder>> packageMap = <String, List<Folder>>{};
|
| + if (packages == null) {
|
| + return packageMap;
|
| + }
|
| + packages.asMap().forEach((String name, Uri uri) {
|
| + if (uri.scheme == 'file' || uri.scheme == '' /* unspecified */) {
|
| + var path = resourceProvider.pathContext.fromUri(uri);
|
| + packageMap[name] = <Folder>[resourceProvider.getFolder(path)];
|
| + }
|
| + });
|
| + return packageMap;
|
| + }
|
| +
|
| PackagesFileDisposition(this.packages) {}
|
|
|
| @override
|
| @@ -1448,13 +1463,7 @@ class PackagesFileDisposition extends FolderDisposition {
|
| ResourceProvider resourceProvider) {
|
| if (packages != null) {
|
| // Construct package map for the SdkExtUriResolver.
|
| - Map<String, List<Folder>> packageMap = <String, List<Folder>>{};
|
| - packages.asMap().forEach((String name, Uri uri) {
|
| - if (uri.scheme == 'file' || uri.scheme == '' /* unspecified */) {
|
| - var path = resourceProvider.pathContext.fromUri(uri);
|
| - packageMap[name] = <Folder>[resourceProvider.getFolder(path)];
|
| - }
|
| - });
|
| + var packageMap = buildPackageMap(resourceProvider);
|
| return <UriResolver>[new SdkExtUriResolver(packageMap)];
|
| } else {
|
| return const <UriResolver>[];
|
|
|