Chromium Code Reviews| Index: pkg/compiler/lib/src/library_loader.dart |
| diff --git a/pkg/compiler/lib/src/library_loader.dart b/pkg/compiler/lib/src/library_loader.dart |
| index 3e5ddde094dd997f8b3c01f3725d8b95a6e8afd4..ab501b0133708b5c4f9a6afb348b16b6a8d1941e 100644 |
| --- a/pkg/compiler/lib/src/library_loader.dart |
| +++ b/pkg/compiler/lib/src/library_loader.dart |
| @@ -505,7 +505,15 @@ class _LibraryLoaderTask extends CompilerTask implements LibraryLoaderTask { |
| LibraryElement library, |
| LibraryDependency tag) { |
| Uri base = library.canonicalUri; |
| - Uri resolvedUri = base.resolve(tag.uri.dartString.slowToString()); |
| + String tagUriString = tag.uri.dartString.slowToString(); |
| + Uri resolvedUri; |
| + try { |
| + resolvedUri = base.resolve(tagUriString); |
| + } on FormatException { |
| + compiler.reportError( |
| + tag, MessageKind.INVALID_URI, {'uri': tagUriString}); |
| + return new Future.value(); |
|
floitsch
2015/05/06 21:19:00
This return feels fishy.
Is the convention that th
|
| + } |
| return createLibrary(handler, library, resolvedUri, tag.uri) |
| .then((LibraryElement loadedLibrary) { |
| if (loadedLibrary == null) return; |