| Index: pkg/barback/lib/src/group_runner.dart
|
| diff --git a/pkg/barback/lib/src/group_runner.dart b/pkg/barback/lib/src/group_runner.dart
|
| index 2e8941621ef48bce473c470e7ff3c7a0a3656494..217d54b7f8fb6a9038d21548a538791b2c85bf41 100644
|
| --- a/pkg/barback/lib/src/group_runner.dart
|
| +++ b/pkg/barback/lib/src/group_runner.dart
|
| @@ -8,6 +8,7 @@ import 'dart:async';
|
|
|
| import 'asset_cascade.dart';
|
| import 'asset_node.dart';
|
| +import 'asset_node_set.dart';
|
| import 'log.dart';
|
| import 'phase.dart';
|
| import 'stream_pool.dart';
|
| @@ -50,7 +51,7 @@ class GroupRunner {
|
| ///
|
| /// [process] is expected to only return new outputs, so this is used to
|
| /// ensure that it does so.
|
| - final _alreadyEmittedOutputs = new Set<AssetNode>();
|
| + final _alreadyEmittedOutputs = new AssetNodeSet();
|
|
|
| GroupRunner(AssetCascade cascade, this._group, this._location) {
|
| var lastPhase = new Phase(cascade, _group.phases.first, _location);
|
| @@ -98,9 +99,6 @@ class GroupRunner {
|
| // If we get here, all phases are done processing.
|
| var newOutputs = _phases.last.availableOutputs
|
| .difference(_alreadyEmittedOutputs);
|
| - for (var output in newOutputs) {
|
| - output.whenRemoved(() => _alreadyEmittedOutputs.remove(output));
|
| - }
|
| _alreadyEmittedOutputs.addAll(newOutputs);
|
|
|
| return new Future.value(newOutputs);
|
|
|