diff --git a/src/core/ControllerConnection.cpp b/src/core/ControllerConnection.cpp index 4d43a4366c3..e08f15b6348 100644 --- a/src/core/ControllerConnection.cpp +++ b/src/core/ControllerConnection.cpp @@ -205,13 +205,15 @@ void ControllerConnection::loadSettings( const QDomElement & _this ) else { m_controllerId = _this.attribute( "id", "-1" ).toInt(); - if( m_controllerId < 0 || m_controllerId >= Engine::getSong()->controllers().size() ) + if( m_controllerId < 0 ) { qWarning( "controller index invalid\n" ); m_controllerId = -1; } - if (!Engine::getSong()->isLoadingProject() && m_controllerId != -1) + if (!Engine::getSong()->isLoadingProject() + && m_controllerId != -1 + && m_controllerId < Engine::getSong()->controllers().size()) { setController( Engine::getSong()-> controllers().at( m_controllerId ) );