From ddf7ceaaea4f6a335b5cf6ad8edf6ceb63fcb691 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 14 Apr 2017 00:32:51 +0200 Subject: [PATCH] Don't A/B en/disable invisible processors, nor MB channelstrip --- libs/ardour/route.cc | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index b27d8f6847..3f6d9e2629 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -1176,6 +1176,14 @@ Route::ab_plugins (bool forward) if (!boost::dynamic_pointer_cast (*i)) { continue; } + if (!(*i)->display_to_user ()) { + continue; + } +#ifdef MIXBUS + if (boost::dynamic_pointer_cast (*i)->is_channelstrip()) { + continue; + } +#endif if ((*i)->enabled ()) { (*i)->enable (false); @@ -1190,10 +1198,17 @@ Route::ab_plugins (bool forward) /* backward = if the redirect was marked to go active on the next ab, do so */ for (ProcessorList::iterator i = _processors.begin(); i != _processors.end(); ++i) { - if (!boost::dynamic_pointer_cast (*i)) { continue; } + if (!(*i)->display_to_user ()) { + continue; + } +#ifdef MIXBUS + if (boost::dynamic_pointer_cast (*i)->is_channelstrip()) { + continue; + } +#endif (*i)->enable ((*i)->get_next_ab_is_active ()); }