Mixer: Fix an invalid read on strip destruction due to a missing lock.

pull/3/head
Jonathan Moore Liles 2012-02-23 19:33:09 -08:00
parent 219c3b1e9b
commit 080100d3b4
2 changed files with 4 additions and 1 deletions

View File

@ -94,6 +94,7 @@ Mixer_Strip::~Mixer_Strip ( )
{
DMESSAGE( "Destroying mixer strip" );
_chain->engine()->lock();
/* make sure this gets destroyed before the chain */
fader_tab->clear();

View File

@ -71,12 +71,14 @@ Module::Module ( ) : Fl_Group( 0, 0, 50, 50, "Unnamed" )
Module::~Module ( )
{
/* we assume that the engine for this chain is already locked */
if ( _editor )
{
delete _editor;
_editor = NULL;
}
for ( unsigned int i = 0; i < audio_input.size(); ++i )
audio_input[i].disconnect();
for ( unsigned int i = 0; i < audio_output.size(); ++i )