// Collect a set of signals
map<const sr_channel*, shared_ptr<Signal> > signal_map;
const vector< shared_ptr<Signal> > sigs = _session.get_signals();
+
for (const shared_ptr<Signal> &sig : sigs)
signal_map[sig->probe()] = sig;
(const sr_channel_group*)g->data;
assert(group);
- // Make a set of signals, and removed this signals from the
+ // Make a set of signals and remove these signals from the
// signal map.
vector< shared_ptr<Signal> > group_sigs;
for (const GSList *p = group->channels; p; p = p->next)
assert(probe);
const auto iter = signal_map.find(probe);
- assert(iter != signal_map.end());
+
+ if (iter == signal_map.end())
+ break;
group_sigs.push_back((*iter).second);
signal_map.erase(iter);