From e64287093fba88d396ef0d2f3cf9988398d20652 Mon Sep 17 00:00:00 2001 From: Konstantin Shcheglov Date: Sun, 30 Sep 2018 18:56:37 -0700 Subject: [PATCH] Fix incompatibilities with new Analyzer. --- lib/src/model.dart | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/src/model.dart b/lib/src/model.dart index 3e8b95a4f1..a9ef22bc3b 100644 --- a/lib/src/model.dart +++ b/lib/src/model.dart @@ -2310,10 +2310,12 @@ class Library extends ModelElement with Categorization, TopLevelContainer { } static String getLibraryName(LibraryElement element) { + var source = element.source; + String name = element.name; if (name == null || name.isEmpty) { // handle the case of an anonymous library - name = element.definingCompilationUnit.name; + name = pathLib.basename(source.fullName); if (name.endsWith('.dart')) { name = name.substring(0, name.length - '.dart'.length); @@ -2325,7 +2327,6 @@ class Library extends ModelElement with Categorization, TopLevelContainer { // name is to get source.encoding. // This may be wrong or misleading, but developers expect the name // of dart:____ - var source = element.definingCompilationUnit.source; name = source.isInSystemLibrary ? source.encoding : name; return name; @@ -5938,8 +5939,9 @@ class PackageBuilder { for (String name in info.packages) { Uri uri = info.asMap()[name]; + String path = pathLib.normalize(pathLib.fromUri(uri)); fileSystem.Resource resource = - PhysicalResourceProvider.INSTANCE.getResource(uri.toFilePath()); + PhysicalResourceProvider.INSTANCE.getResource(path); if (resource is fileSystem.Folder) { map[name] = [resource]; }