- _session.foreach_bundle (
- bind (mem_fun (*this, &MixerStrip::add_bundle_to_output_menu), current)
- );
+ boost::shared_ptr<ARDOUR::BundleList> b = _session.bundles ();
+ for (ARDOUR::BundleList::iterator i = b->begin(); i != b->end(); ++i) {
+ maybe_add_bundle_to_output_menu (*i, current);
+ }
+
+ boost::shared_ptr<ARDOUR::RouteList> routes = _session.get_routes ();
+ for (ARDOUR::RouteList::const_iterator i = routes->begin(); i != routes->end(); ++i) {
+ maybe_add_bundle_to_output_menu ((*i)->bundle_for_inputs(), current);
+ }
+
+ if (citems.size() == 2) {
+ /* no routes added; remove the separator */
+ citems.pop_back ();
+ }