diff options
author | Christian Kandeler <christian.kandeler@digia.com> | 2014-09-12 17:38:12 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@digia.com> | 2014-09-15 11:45:16 +0200 |
commit | 4cfaeb8b519334370ed769d0a578cc4e5ef4d340 (patch) | |
tree | 3b8270a620477ab19b1452069e625938bc6ce408 | |
parent | 165f759e184b28be8bb071e6ed3308436e404238 (diff) |
QbsProjectManager: Fix crash when calling QbsProject::files().
We can't do that during parsing, as qbs::Project::buildSystemFiles()
might run into a race condition.
Change-Id: Iae3fd3000fdc71fec50c82d50fb3b4e3888351bc
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsproject.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsproject.cpp b/src/plugins/qbsprojectmanager/qbsproject.cpp index e115649868..a973cf585b 100644 --- a/src/plugins/qbsprojectmanager/qbsproject.cpp +++ b/src/plugins/qbsprojectmanager/qbsproject.cpp @@ -190,11 +190,11 @@ static void collectFilesForProject(const qbs::ProjectData &project, QSet<QString QStringList QbsProject::files(Project::FilesMode fileMode) const { Q_UNUSED(fileMode); - if (!m_rootProjectNode || !m_rootProjectNode->qbsProjectData().isValid()) + if (!m_qbsProject.isValid() || isParsing()) return QStringList(); QSet<QString> result; - collectFilesForProject(m_rootProjectNode->qbsProjectData(), result); - result.unite(qbsProject().buildSystemFiles()); + collectFilesForProject(m_projectData, result); + result.unite(m_qbsProject.buildSystemFiles()); return result.toList(); } |