diff --git a/libs/ardour/pan_controllable.cc b/libs/ardour/pan_controllable.cc index 2f9ca3e6a6..3037ccf706 100644 --- a/libs/ardour/pan_controllable.cc +++ b/libs/ardour/pan_controllable.cc @@ -26,14 +26,16 @@ using namespace ARDOUR; void PanControllable::actually_set_value (double v, Controllable::GroupControlDisposition group_override) { - boost::shared_ptr p = owner->panner(); + v = std::min (upper (), std::max (lower (), v)); - if (!p) { + if (!owner || !owner->panner()) { /* no panner: just do it */ AutomationControl::actually_set_value (v, group_override); return; } + boost::shared_ptr p = owner->panner(); + bool can_set = false; switch (parameter().type()) {