in lib/src/stream_group.dart [188:208]
void _onListen() {
_state = _StreamGroupState.listening;
for (var entry in [..._subscriptions.entries]) {
// If this is a broadcast group and this isn't the first time it's been
// listened to, there may still be some subscriptions to
// single-subscription streams.
if (entry.value != null) continue;
var stream = entry.key;
try {
_subscriptions[stream] = _listenToStream(stream);
} catch (error) {
// If [Stream.listen] throws a synchronous error (for example because
// the stream has already been listened to), cancel all subscriptions
// and rethrow the error.
_onCancel()?.catchError((_) {});
rethrow;
}
}
}