From a49b0f53aa2d83a9291c35f323f90b46d8869390 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Sat, 29 Oct 2011 12:57:07 +0000 Subject: fix leak of Panner,Pannable and MonoPanner (UI) git-svn-id: svn://localhost/ardour2/branches/3.0@10332 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/panner_ui.cc | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'gtk2_ardour/panner_ui.cc') diff --git a/gtk2_ardour/panner_ui.cc b/gtk2_ardour/panner_ui.cc index 05c2843630..16d7a19009 100644 --- a/gtk2_ardour/panner_ui.cc +++ b/gtk2_ardour/panner_ui.cc @@ -205,9 +205,9 @@ PannerUI::~PannerUI () delete pan_astyle_menu; delete pan_astate_menu; delete _stereo_panner; + delete _mono_panner; } - void PannerUI::panshell_changed () { @@ -279,23 +279,22 @@ PannerUI::setup_pan () } else if (nins == 1) { /* 1-in/2out */ - MonoPanner* mp; boost::shared_ptr pannable = _panner->pannable(); boost::shared_ptr ac = pannable->pan_azimuth_control; - mp = new MonoPanner (_panner); - - mp->StartGesture.connect (sigc::bind (sigc::mem_fun (*this, &PannerUI::start_touch), + _mono_panner = new MonoPanner (_panner); + + _mono_panner->StartGesture.connect (sigc::bind (sigc::mem_fun (*this, &PannerUI::start_touch), boost::weak_ptr (ac))); - mp->StopGesture.connect (sigc::bind (sigc::mem_fun (*this, &PannerUI::stop_touch), + _mono_panner->StopGesture.connect (sigc::bind (sigc::mem_fun (*this, &PannerUI::stop_touch), boost::weak_ptr(ac))); - mp->signal_button_release_event().connect (sigc::mem_fun(*this, &PannerUI::pan_button_event)); + _mono_panner->signal_button_release_event().connect (sigc::mem_fun(*this, &PannerUI::pan_button_event)); - mp->set_size_request (-1, pan_bar_height); + _mono_panner->set_size_request (-1, pan_bar_height); update_pan_sensitive (); - pan_vbox.pack_start (*mp, false, false); + pan_vbox.pack_start (*_mono_panner, false, false); } else { warning << string_compose (_("No panner user interface is currently available for %1-in/2out tracks/busses"), -- cgit v1.2.3