diff --git a/src/core/song.cpp b/src/core/song.cpp index ceb2510c7b..0252e61615 100644 --- a/src/core/song.cpp +++ b/src/core/song.cpp @@ -783,9 +783,12 @@ void song::createNewProject( void ) QCoreApplication::instance()->processEvents(); + m_loadingProject = FALSE; + + engine::getBBTrackContainer()->updateAfterTrackAdd(); + engine::getProjectJournal()->setJournalling( TRUE ); - m_loadingProject = FALSE; m_modified = FALSE; if( engine::getMainWindow() ) @@ -834,6 +837,8 @@ void song::loadProject( const QString & _file_name ) engine::getMainWindow()->resetWindowTitle(); } + engine::getMixer()->lock(); + // get the header information from the DOM m_tempoModel.loadSettings( mmp.head(), "bpm" ); m_timeSigModel.loadSettings( mmp.head(), "timesig" ); @@ -902,6 +907,8 @@ void song::loadProject( const QString & _file_name ) node = node.nextSibling(); } + engine::getMixer()->unlock(); + // Connect controller links to their controllers // now that everything is loaded controllerConnection::finalizeConnections();