13
0

correctly set up members of GainMeterBase in ::set_controls()

This commit is contained in:
Paul Davis 2016-01-25 12:50:27 -05:00
parent cfc55e392f
commit b3d5d4f138

View File

@ -190,12 +190,15 @@ GainMeterBase::set_controls (boost::shared_ptr<Route> r,
connections.clear (); connections.clear ();
model_connections.drop_connections (); model_connections.drop_connections ();
if (!pm && !amp) { /* no meter and no control? nothing to do ... */
if (!pm && !control) {
level_meter->set_meter (0); level_meter->set_meter (0);
gain_slider->set_controllable (boost::shared_ptr<PBD::Controllable>()); gain_slider->set_controllable (boost::shared_ptr<PBD::Controllable>());
_meter.reset (); _meter.reset ();
_amp.reset (); _amp.reset ();
_route.reset (); _route.reset ();
_control.reset ();
return; return;
} }
@ -204,8 +207,6 @@ GainMeterBase::set_controls (boost::shared_ptr<Route> r,
_route = r; _route = r;
_control = control; _control = control;
assert (_control);
level_meter->set_meter (pm.get()); level_meter->set_meter (pm.get());
gain_slider->set_controllable (_control); gain_slider->set_controllable (_control);
@ -731,13 +732,13 @@ GainMeterBase::meter_point_clicked ()
void void
GainMeterBase::amp_start_touch () GainMeterBase::amp_start_touch ()
{ {
_control->start_touch (_amp->session().transport_frame()); _control->start_touch (_control->session().transport_frame());
} }
void void
GainMeterBase::amp_stop_touch () GainMeterBase::amp_stop_touch ()
{ {
_control->stop_touch (false, _amp->session().transport_frame()); _control->stop_touch (false, _control->session().transport_frame());
} }
gint gint