aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmakeprojectmanager
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2020-04-24 12:39:54 +0200
committerEike Ziller <eike.ziller@qt.io>2020-04-24 13:58:05 +0200
commitd79febdde966f8becfbf2c0a4fdd4cd4ed4f2c25 (patch)
tree0fa42e55e8aa480982d8f1d9561cbfffd3501c7d /src/plugins/qmakeprojectmanager
parent02785342acc1580210e6d69b5893c431ddc0c009 (diff)
parent20b095c6b4b9bd394a4ad6062a588de5bbf14b52 (diff)
Merge remote-tracking branch 'origin/4.12'
Conflicts: src/plugins/cmakeprojectmanager/cmakekitinformation.cpp Change-Id: I90ef0063ed24e23bcb3d73fff086f50324faa1e2
Diffstat (limited to 'src/plugins/qmakeprojectmanager')
-rw-r--r--src/plugins/qmakeprojectmanager/qmakeproject.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakeproject.cpp b/src/plugins/qmakeprojectmanager/qmakeproject.cpp
index d424e7da95..3e07239d9d 100644
--- a/src/plugins/qmakeprojectmanager/qmakeproject.cpp
+++ b/src/plugins/qmakeprojectmanager/qmakeproject.cpp
@@ -502,8 +502,13 @@ void QmakeBuildSystem::startAsyncTimer(QmakeProFile::AsyncUpdateDelay delay)
void QmakeBuildSystem::incrementPendingEvaluateFutures()
{
- if (m_pendingEvaluateFuturesCount == 0)
- m_guard = guardParsingRun();
+ if (m_pendingEvaluateFuturesCount == 0) {
+ // The guard actually might already guard the project if this
+ // here is the re-start of a previously aborted parse due to e.g.
+ // changing build directories while parsing.
+ if (!m_guard.guardsProject())
+ m_guard = guardParsingRun();
+ }
++m_pendingEvaluateFuturesCount;
m_asyncUpdateFutureInterface.setProgressRange(m_asyncUpdateFutureInterface.progressMinimum(),
m_asyncUpdateFutureInterface.progressMaximum() + 1);