Index: lib/src/barback/dependency_computer.dart |
diff --git a/lib/src/barback/dependency_computer.dart b/lib/src/barback/dependency_computer.dart |
index 494b3a9d6abb1ec9371afca6300331230f516573..4134e8006e2fefe7e624f7a4d7e948c89c54759b 100644 |
--- a/lib/src/barback/dependency_computer.dart |
+++ b/lib/src/barback/dependency_computer.dart |
@@ -287,8 +287,8 @@ class _PackageDependencyComputer { |
// this stored set of dependencies rather than the potentially wider |
// set that would be recomputed if [transformersNeededByLibrary] |
// were called anew. |
- _transformersNeededByTransformers[id] = |
- transformersNeededByLibrary(_package.transformerPath(id)); |
+ _transformersNeededByTransformers.putIfAbsent(id, () => |
+ transformersNeededByLibrary(_package.transformerPath(id))); |
} |
} on CycleException catch (error) { |
throw error.prependStep("$packageName is transformed by $id"); |