| Index: pkg/front_end/lib/src/fasta/source/source_library_builder.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart
|
| index 3dbc65e3e5bba41d651ae22442d4c2e474ffd9c6..0c0599ee470627d2c138c8b0fc3e78989d97e7be 100644
|
| --- a/pkg/front_end/lib/src/fasta/source/source_library_builder.dart
|
| +++ b/pkg/front_end/lib/src/fasta/source/source_library_builder.dart
|
| @@ -124,8 +124,20 @@ abstract class SourceLibraryBuilder<T extends TypeBuilder, R>
|
| imports.add(new Import(loader.read(resolve(uri)), prefix, combinators));
|
| }
|
|
|
| - void addPart(List<MetadataBuilder> metadata, String uri) {
|
| - parts.add(loader.read(resolve(uri)));
|
| + void addPart(List<MetadataBuilder> metadata, String path) {
|
| + Uri resolvedUri;
|
| + Uri newFileUri;
|
| + if (uri.scheme == "dart") {
|
| + resolvedUri = new Uri(scheme: "dart", path: "${uri.path}/$path");
|
| + newFileUri = fileUri.resolve(path);
|
| + } else {
|
| + newFileUri = resolvedUri = resolve(path);
|
| + }
|
| + LibraryBuilder part = loader.read(resolvedUri);
|
| + if (part is SourceLibraryBuilder) {
|
| + part.fileUri ??= newFileUri;
|
| + }
|
| + parts.add(part);
|
| }
|
|
|
| void addPartOf(List<MetadataBuilder> metadata, String name) {
|
|
|