diff options
author | Carl Hetherington <carl@carlh.net> | 2009-12-22 01:09:50 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2009-12-22 01:09:50 +0000 |
commit | 06f094d4b64a826ddd71c970aaa1679867a75975 (patch) | |
tree | bf187b7f76ea1ea790afb3a428e286d53f259453 /gtk2_ardour/panner_ui.cc | |
parent | f450df300c9c057141a4caf79ff6dbfbf58492d9 (diff) |
Fix crash when going from >2 outputs (2D panner) to <= 2 outputs.
git-svn-id: svn://localhost/ardour2/branches/3.0@6380 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/panner_ui.cc')
-rw-r--r-- | gtk2_ardour/panner_ui.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index 0d2297383c..e58af02f9b 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -358,6 +358,9 @@ PannerUI::setup_pan () pan_adjustments.pop_back (); } + delete panner; + panner = 0; + /* stick something into the panning viewport so that it redraws */ EventBox* eb = manage (new EventBox()); @@ -376,6 +379,9 @@ PannerUI::setup_pan () pan_adjustments.pop_back (); } + delete panner; + panner = 0; + while ((asz = pan_adjustments.size()) < npans) { float x, rx; @@ -447,8 +453,8 @@ PannerUI::setup_pan () panner->set_name ("MixerPanZone"); panner->show (); - panner->signal_button_press_event().connect - (sigc::bind (sigc::mem_fun(*this, &PannerUI::pan_button_event), (uint32_t) 0), false); + panner->signal_button_press_event().connect + (sigc::bind (sigc::mem_fun(*this, &PannerUI::pan_button_event), (uint32_t) 0), false); } update_pan_sensitive (); |