diff options
author | Carl Hetherington <carl@carlh.net> | 2009-10-14 23:47:44 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2009-10-14 23:47:44 +0000 |
commit | 09efd82c6aea973e3eb9497ef2b09256bf5ddde4 (patch) | |
tree | 4ec39121453eb76121b55b9fa09c47554f6a22e8 /gtk2_ardour | |
parent | 39ad06f03bed5d434e1738ccaf4c8ab76f86649b (diff) |
Fix assertion failure when switching from a 2-channel to 1-channel route with the editor mixer open.
git-svn-id: svn://localhost/ardour2/branches/3.0@5785 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/panner_ui.cc | 10 | ||||
-rw-r--r-- | gtk2_ardour/panner_ui.h | 1 |
2 files changed, 6 insertions, 5 deletions
diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index ca10dd4300..8b4830f484 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -52,6 +52,7 @@ const int PannerUI::pan_bar_height = 30; PannerUI::PannerUI (Session& s) : _session (s), _current_nouts (-1), + _current_npans (-1), hAdjustment(0.0, 0.0, 0.0), vAdjustment(0.0, 0.0, 0.0), panning_viewport(hAdjustment, vAdjustment), @@ -340,15 +341,15 @@ PannerUI::setup_pan () return; } - uint32_t nouts = _panner->nouts(); + uint32_t const nouts = _panner->nouts(); + uint32_t const npans = _panner->npanners(); - if (int32_t (nouts) == _current_nouts) { + if (int32_t (nouts) == _current_nouts && npans == _current_npans) { return; } _current_nouts = nouts; - - cout << "Setup pan for " << _panner->name() << endl; + _current_npans = npans; if (nouts == 0 || nouts == 1) { @@ -369,7 +370,6 @@ PannerUI::setup_pan () } else if (nouts == 2) { vector<Adjustment*>::size_type asz; - uint32_t npans = _panner->npanners(); while (!pan_adjustments.empty()) { delete pan_bars.back(); diff --git a/gtk2_ardour/panner_ui.h b/gtk2_ardour/panner_ui.h index ce4781fe11..724b8b86e7 100644 --- a/gtk2_ardour/panner_ui.h +++ b/gtk2_ardour/panner_ui.h @@ -84,6 +84,7 @@ class PannerUI : public Gtk::HBox bool ignore_toggle; bool in_pan_update; int _current_nouts; + int _current_npans; static const int pan_bar_height; |