| Index: pkg/analyzer/lib/src/summary/link.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/link.dart b/pkg/analyzer/lib/src/summary/link.dart
|
| index d46d119e37bcb25f45ee8ceca912b9fda5f53b42..7b499395b5cbd6afcaf06ef84b5b2e56e0655807 100644
|
| --- a/pkg/analyzer/lib/src/summary/link.dart
|
| +++ b/pkg/analyzer/lib/src/summary/link.dart
|
| @@ -3415,8 +3415,16 @@ abstract class LibraryElementForLink<
|
| * Return the [LibraryElement] corresponding to the given dependency [index].
|
| */
|
| LibraryElementForLink _getDependency(int index) {
|
| - return _dependencies[index] ??= _linker.getLibrary(resolveRelativeUri(
|
| - _absoluteUri, Uri.parse(_linkedLibrary.dependencies[index].uri)));
|
| + LibraryElementForLink result = _dependencies[index];
|
| + if (result == null) {
|
| + String relativeUri = _linkedLibrary.dependencies[index].uri;
|
| + Uri absoluteUri = relativeUri.isEmpty
|
| + ? _absoluteUri
|
| + : resolveRelativeUri(_absoluteUri, Uri.parse(relativeUri));
|
| + result = _linker.getLibrary(absoluteUri);
|
| + _dependencies[index] = result;
|
| + }
|
| + return result;
|
| }
|
|
|
| /**
|
| @@ -3999,11 +4007,11 @@ class ParameterElementForLink_VariableSetter implements ParameterElementImpl {
|
| @override
|
| final PropertyAccessorElementForLink_Variable enclosingElement;
|
|
|
| - ParameterElementForLink_VariableSetter(this.enclosingElement);
|
| -
|
| @override
|
| bool inheritsCovariant = false;
|
|
|
| + ParameterElementForLink_VariableSetter(this.enclosingElement);
|
| +
|
| @override
|
| bool get isCovariant => false;
|
|
|
|
|