diff --git a/src/plugins/qt4projectmanager/qtversionmanager.cpp b/src/plugins/qt4projectmanager/qtversionmanager.cpp index 5774b8dff3f28ed978f3b8f8a835f7c05a421bae..f28ec89eb0170ad21912253738e32bbaa60f7461 100644 --- a/src/plugins/qt4projectmanager/qtversionmanager.cpp +++ b/src/plugins/qt4projectmanager/qtversionmanager.cpp @@ -141,6 +141,23 @@ QtVersionManager::QtVersionManager() writeVersionsIntoSettings(); updateDocumentation(); + + if (m_defaultVersion > m_versions.size() || m_defaultVersion < 0) { + // Invalid default version, correct that... + for(int i = 0; i < m_versions.size(); ++i) { + QtVersion *version = m_versions.at(i); + if (version->isAutodetected() && version->autodetectionSource() == PATH_AUTODETECTION_SOURCE && version->isValid()) { + m_defaultVersion = i; + break; + } + } + } + + if (m_defaultVersion > m_versions.size() || m_defaultVersion < 0) { + // Still invalid? Use the first one + m_defaultVersion = 0; + } + // cannot call from ctor, needs to get connected extenernally first QTimer::singleShot(0, this, SLOT(updateExamples())); }