diff --git a/gtk2_ardour/processor_box.cc b/gtk2_ardour/processor_box.cc index 16f580c6d9..f92c6c9209 100644 --- a/gtk2_ardour/processor_box.cc +++ b/gtk2_ardour/processor_box.cc @@ -3422,6 +3422,11 @@ ProcessorBox::paste_processor_state (const XMLNodeList& nlist, boost::shared_ptr continue; } + /* compare to ProcessorBox::build_possible_aux_menu */ + if (_route->is_monitor () || _route->is_foldbackbus ()) { + continue; + } + boost::shared_ptr sendpan(new Pannable (*_session)); XMLNode n (**niter); InternalSend* s = new InternalSend (*_session, sendpan, _route->mute_master(), @@ -3432,6 +3437,14 @@ ProcessorBox::paste_processor_state (const XMLNodeList& nlist, boost::shared_ptr return; } + boost::shared_ptr target = s->target_route(); + + if (_route->internal_send_for (target) || target == _route) { + /* aux-send to target already exists */ + delete s; + continue; + } + p.reset (s); } else if (type->value() == "send") {