| Index: dart/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart
|
| diff --git a/dart/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart b/dart/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart
|
| index 54ded9ccb8f91461f6e0e48d135941013ed13e2d..4dc3294464e1af05241adb17131b85b7640c6d67 100644
|
| --- a/dart/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart
|
| +++ b/dart/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart
|
| @@ -3033,16 +3033,28 @@ if (typeof document !== "undefined" && document.readyState !== "complete") {
|
| for (LibraryElement library in sortedLibraries) {
|
| List<CodeBuffer> buffers = libraryBuffers[library];
|
| var buffer = buffers[0];
|
| + var uri = library.canonicalUri;
|
| + if (uri.scheme == 'file' && compiler.sourceMapUri != null) {
|
| + // TODO(ahe): It is a hack to use compiler.sourceMapUri
|
| + // here. It should be relative to the main JavaScript
|
| + // output file.
|
| + uri = relativize(
|
| + compiler.sourceMapUri, library.canonicalUri, false);
|
| + }
|
| if (buffer != null) {
|
| mainBuffer
|
| - ..write('["${library.getLibraryOrScriptName()}",$_{$n')
|
| + ..write('["${library.getLibraryOrScriptName()}",$_')
|
| + ..write('"${uri}",$_')
|
| + ..write('{$n')
|
| ..addBuffer(buffer)
|
| ..write('}],$n');
|
| }
|
| buffer = buffers[1];
|
| if (buffer != null) {
|
| deferredBuffer
|
| - ..write('["${library.getLibraryOrScriptName()}",$_{$n')
|
| + ..write('["${library.getLibraryOrScriptName()}",$_')
|
| + ..write('"${uri}",$_')
|
| + ..write('{$n')
|
| ..addBuffer(buffer)
|
| ..write('}],$n');
|
| }
|
| @@ -3227,7 +3239,8 @@ const String REFLECTION_DATA_PARSER = r'''
|
| for (var i = 0; i < length; i++) {
|
| var data = reflectionData[i];
|
| var name = data[0];
|
| - var descriptor = data[1];
|
| + var uri = data[1];
|
| + var descriptor = data[2];
|
| var classes = [];
|
| var functions = [];
|
| for (var property in descriptor) {
|
| @@ -3242,7 +3255,6 @@ const String REFLECTION_DATA_PARSER = r'''
|
| classes.push(element[""]);
|
| }
|
| }
|
| - var uri = ".../library" + i + ".dart";
|
| libraries.push([name, uri, classes, functions]);
|
| }
|
| })''';
|
|
|