From 67c74fbe2909fa435b6adea3153f43bcc29885fd Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 21 Oct 2019 09:18:31 +0200 Subject: [PATCH] ProjectExplorer: Do not return early on parsingFinished assert This is a hack, not a proper solution. In theory, this here should serve as a lock. We currently get start - start - finish - finish sequences when switching qmake targets quickly, keeping the run button disabled. The whole setup here is unfortunate. Parsing inherently depend on more than the project alone, it's roughly per-Target. So keeping track of it in the Project complicates it. Change-Id: I57d361ce21088d8e1ec53ce75f83ff3bd04851e1 Reviewed-by: Christian Kandeler --- src/plugins/projectexplorer/project.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index 0a5a157a93d..97352034274 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -524,7 +524,9 @@ void Project::emitParsingStarted() void Project::emitParsingFinished(bool success) { - QTC_ASSERT(d->m_isParsing, return); + // Intentionally no return, as we currently get start - start - end - end + // sequences when switching qmake targets quickly. + QTC_CHECK(d->m_isParsing); d->m_isParsing = false; d->m_hasParsingData = success;