diff options
Diffstat (limited to 'gtk2_ardour/port_group.cc')
-rw-r--r-- | gtk2_ardour/port_group.cc | 54 |
1 files changed, 31 insertions, 23 deletions
diff --git a/gtk2_ardour/port_group.cc b/gtk2_ardour/port_group.cc index 808ddc4ee0..7439fe1b77 100644 --- a/gtk2_ardour/port_group.cc +++ b/gtk2_ardour/port_group.cc @@ -543,8 +543,10 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp we excluded them earlier. */ - string lp = p, monitor = _("Monitor"); - boost::to_lower (lp); + string lp = p; + string monitor = _("Monitor"); + + boost::to_lower (lp); boost::to_lower (monitor); if ((lp.find (monitor) != string::npos) && @@ -560,29 +562,35 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp */ PortEngine::PortHandle ph = AudioEngine::instance()->port_engine().get_port_by_name (p); - if (ph) { - DataType t (AudioEngine::instance()->port_engine().port_data_type (ph)); - if (t != DataType::NIL) { - if (port_has_prefix (p, X_("system:")) || - port_has_prefix (p, X_("alsa_pcm:")) || - port_has_prefix (p, X_("alsa_midi:"))) { - extra_system[t].push_back (p); - } else if (port_has_prefix (p, lpnc)) { - - /* we own this port (named after the program) */ - - /* Hide scene ports from non-Tracks Live builds */ - if (!ARDOUR::Profile->get_trx()) { - if (p.find (_("Scene ")) != string::npos) { - ++s; - continue; - } - } - extra_program[t].push_back (p); - } else { - extra_other[t].push_back (p); + if (!ph) { + continue; + } + + DataType t (AudioEngine::instance()->port_engine().port_data_type (ph)); + + if (t != DataType::NIL) { + + if (port_has_prefix (p, X_("system:")) || + port_has_prefix (p, X_("alsa_pcm:")) || + port_has_prefix (p, X_("alsa_midi:"))) { + extra_system[t].push_back (p); + + } else if (port_has_prefix (p, lpnc)) { + + /* we own this port (named after the program) */ + + /* Hide scene ports from non-Tracks Live builds */ + if (!ARDOUR::Profile->get_trx()) { + if (p.find (_("Scene ")) != string::npos) { + ++s; + continue; + } } + + extra_program[t].push_back (p); + } else { + extra_other[t].push_back (p); } } } |