From 3e929e4b986d83b49703034a75c82bc985d9f904 Mon Sep 17 00:00:00 2001 From: Jonathan Moore Liles Date: Thu, 21 Jan 2010 23:30:16 -0600 Subject: [PATCH] Mixer: Explicitly destroy chian when tearing down mixer strip. --- Mixer/Mixer.H | 2 +- Mixer/Mixer_Strip.C | 7 ++++--- Mixer/Mixer_Strip.H | 8 +------- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/Mixer/Mixer.H b/Mixer/Mixer.H index 6c2892a..a7a8cb9 100644 --- a/Mixer/Mixer.H +++ b/Mixer/Mixer.H @@ -46,8 +46,8 @@ private: Fl_Scroll *scroll; Fl_Pack *pack; - Fl_Flowpack *mixer_strips; + Fl_Flowpack *mixer_strips; protected: diff --git a/Mixer/Mixer_Strip.C b/Mixer/Mixer_Strip.C index 899d876..d7307c7 100644 --- a/Mixer/Mixer_Strip.C +++ b/Mixer/Mixer_Strip.C @@ -177,6 +177,10 @@ Mixer_Strip::Mixer_Strip() : Fl_Group( 0, 0, 120, 600 ) Mixer_Strip::~Mixer_Strip ( ) { DMESSAGE( "Destroying mixer strip" ); + + delete _chain; + _chain = NULL; + log_destroy(); } @@ -288,9 +292,6 @@ Mixer_Strip::init ( ) { _chain = 0; - chain_buffers = 0; - chain_buffer = NULL; - // box(FL_THIN_UP_BOX); box( FL_RFLAT_BOX ); diff --git a/Mixer/Mixer_Strip.H b/Mixer/Mixer_Strip.H index 6405e30..c7004ac 100644 --- a/Mixer/Mixer_Strip.H +++ b/Mixer/Mixer_Strip.H @@ -55,8 +55,7 @@ public: Mixer_Strip(int X, int Y, int W, int H, const char *L = 0); Mixer_Strip( const char *name, int channels ); Mixer_Strip(); /* for log create */ - ~Mixer_Strip(); - + virtual ~Mixer_Strip(); void chain ( Chain *c ); @@ -101,14 +100,9 @@ private: Controller_Module *jack_input_controller; Meter_Indicator_Module *meter_indicator; - sample_t **chain_buffer; - int chain_buffers; - nframes_t nframes; - Fl_Color _color; -// unsigned _color; void init ( ); void cb_handle(Fl_Widget*);