Do not allow feedback override on foldback sends

FoldbackStrip::update_send_box() GUI relies on ->fed_by() to
determine if a FB bus has a send from a route.

Under the hood this uses direct_feeds_according_to_reality()
and InternalSend::feeds(). When `allow_feedback` is set a send is
assumed to not directly feed a target (to allow loopbacks).

This mode must not be used for foldback sends.
This commit is contained in:
Robin Gareus 2021-01-08 18:39:07 +01:00
parent 728d2a3771
commit 303d7bb2e8
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04

View File

@ -357,6 +357,9 @@ InternalSend::set_block_size (pframes_t nframes)
void
InternalSend::set_allow_feedback (bool yn)
{
if (is_foldback ()) {
return;
}
_allow_feedback = yn;
_send_from->processors_changed (RouteProcessorChange ()); /* EMIT SIGNAL */
}
@ -407,7 +410,11 @@ InternalSend::set_state (const XMLNode& node, int version)
}
}
node.get_property (X_("allow-feedback"), _allow_feedback);
if (!is_foldback ()) {
node.get_property (X_("allow-feedback"), _allow_feedback);
} else {
_allow_feedback = false;
}
return 0;
}