| Index: pkg/dev_compiler/lib/js/legacy/dart_library.js
|
| diff --git a/pkg/dev_compiler/lib/js/legacy/dart_library.js b/pkg/dev_compiler/lib/js/legacy/dart_library.js
|
| index 9c6a376eb12b3a15931ffc07a565e73660efa08a..89549ae240d6475f998a2f371ab4fc99a8d71436 100644
|
| --- a/pkg/dev_compiler/lib/js/legacy/dart_library.js
|
| +++ b/pkg/dev_compiler/lib/js/legacy/dart_library.js
|
| @@ -67,7 +67,11 @@ dart_library =
|
| loadImports() {
|
| let results = [];
|
| for (let name of this._imports) {
|
| - results.push(import_(name));
|
| + let lib = libraries.get(name);
|
| + if (!lib) {
|
| + throwLibraryError('Library not available: ' + name);
|
| + }
|
| + results.push(lib.load());
|
| }
|
| return results;
|
| }
|
| @@ -148,27 +152,12 @@ dart_library =
|
| }
|
| dart_library.library = library;
|
|
|
| - // Maintain a stack of active imports. If a requested library/module is not
|
| - // available, print the stack to show where/how it was requested.
|
| - let _stack = [];
|
| - function import_(name) {
|
| - let lib = libraries.get(name);
|
| - if (!lib) {
|
| - let message = 'Module ' + name + ' not loaded in the browser.';
|
| - if (_stack != []) {
|
| - message += '\nDependency via:';
|
| - let indent = '';
|
| - for (let last = _stack.length - 1; last >= 0; last--) {
|
| - indent += ' ';
|
| - message += '\n' + indent + '- ' + _stack[last];
|
| - }
|
| - }
|
| - throwLibraryError(message);
|
| - }
|
| - _stack.push(name);
|
| - let result = lib.load();
|
| - _stack.pop();
|
| - return result;
|
| + function import_(libraryName) {
|
| + let loader = libraries.get(libraryName);
|
| + // TODO(vsm): A user might call this directly from JS (as we do in tests).
|
| + // We may want a different error type.
|
| + if (!loader) throwLibraryError('Library not found: ' + libraryName);
|
| + return loader.load();
|
| }
|
| dart_library.import = import_;
|
|
|
|
|