diff --git a/libs/surfaces/osc/osc_cue_observer.cc b/libs/surfaces/osc/osc_cue_observer.cc index a3d3f445c4..a8fddfa2ab 100644 --- a/libs/surfaces/osc/osc_cue_observer.cc +++ b/libs/surfaces/osc/osc_cue_observer.cc @@ -64,6 +64,7 @@ OSCCueObserver::clear_observer () tick_enable = false; strip_connections.drop_connections (); + _strip = boost::shared_ptr (); send_end (0); // all strip buttons should be off and faders 0 and etc. _osc.text_message_with_id (X_("/cue/name"), 0, " ", true, addr); diff --git a/libs/surfaces/osc/osc_route_observer.cc b/libs/surfaces/osc/osc_route_observer.cc index c22e539b3a..840142f4a6 100644 --- a/libs/surfaces/osc/osc_route_observer.cc +++ b/libs/surfaces/osc/osc_route_observer.cc @@ -97,6 +97,9 @@ OSCRouteObserver::no_strip () _init = true; strip_connections.drop_connections (); + _gain_control = boost::shared_ptr (); + _send = boost::shared_ptr (); + _strip = boost::shared_ptr (); /* * The strip will sit idle at this point doing nothing until * the surface has recalculated it's strip list and then calls diff --git a/libs/surfaces/osc/osc_select_observer.cc b/libs/surfaces/osc/osc_select_observer.cc index f072fad549..824881ad4f 100644 --- a/libs/surfaces/osc/osc_select_observer.cc +++ b/libs/surfaces/osc/osc_select_observer.cc @@ -101,6 +101,7 @@ OSCSelectObserver::no_strip () send_connections.drop_connections (); plugin_connections.drop_connections (); eq_connections.drop_connections (); + _strip = boost::shared_ptr (); /* * The strip will sit idle at this point doing nothing until * the surface has recalculated it's strip list and then calls