From 0dc2060ea2407b864c67849d4ac4637ce4bfdc11 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Tue, 27 Nov 2012 23:29:55 +0100 Subject: [PATCH] ExportProjectDialog: fixed non-multi-track export once more There was another bug causing LMMS to crash when using regular export feature. Thanks to Mikobuntu for reporting this bug. --- src/gui/export_project_dialog.cpp | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/src/gui/export_project_dialog.cpp b/src/gui/export_project_dialog.cpp index 1167df8f2..93527c657 100644 --- a/src/gui/export_project_dialog.cpp +++ b/src/gui/export_project_dialog.cpp @@ -146,21 +146,24 @@ void exportProjectDialog::closeEvent( QCloseEvent * _ce ) -void exportProjectDialog::popRender() { - - track* render_track = m_tracksToRender.back(); - m_tracksToRender.pop_back(); - - // Set must states for song tracks - for( TrackVector::ConstIterator it = m_unmuted.begin(); it != m_unmuted.end(); ++it ) +void exportProjectDialog::popRender() +{ + if( m_multiExport && m_tracksToRender.isEmpty() == false ) { - if( (*it) == render_track ) + track* renderTrack = m_tracksToRender.back(); + m_tracksToRender.pop_back(); + + // Set must states for song tracks + for( TrackVector::ConstIterator it = m_unmuted.begin(); it != m_unmuted.end(); ++it ) { - (*it)->setMuted( false ); - } - else - { - (*it)->setMuted( true ); + if( (*it) == renderTrack ) + { + (*it)->setMuted( false ); + } + else + { + (*it)->setMuted( true ); + } } } @@ -171,6 +174,8 @@ void exportProjectDialog::popRender() { render( r ); } + + void exportProjectDialog::multiRender() { m_dirName = m_fileName;