Index: packages/analyzer/lib/file_system/memory_file_system.dart |
diff --git a/packages/analyzer/lib/file_system/memory_file_system.dart b/packages/analyzer/lib/file_system/memory_file_system.dart |
index 1684fe969911a74677be2198c9bd97543419d585..058f9eb9ef94b35bb562e826e1e1f0d514206ad3 100644 |
--- a/packages/analyzer/lib/file_system/memory_file_system.dart |
+++ b/packages/analyzer/lib/file_system/memory_file_system.dart |
@@ -363,7 +363,13 @@ class _MemoryFileSource extends Source { |
@override |
Uri resolveRelativeUri(Uri relativeUri) { |
- return uri.resolveUri(relativeUri); |
+ Uri baseUri = uri; |
+ String scheme = uri.scheme; |
+ if (scheme == DartUriResolver.DART_SCHEME) { |
+ String libraryName = uri.path; |
+ baseUri = Uri.parse('$scheme:$libraryName/$libraryName.dart'); |
+ } |
+ return baseUri.resolveUri(relativeUri); |
} |
@override |