forked from qt-creator/qt-creator
Qmake: Invalidate contents of QmakeVfs on target change
Task-number: QTCREATORBUG-20113 Change-Id: I13cd3749a942cc06172dd63f163bff88490a44ed Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
This commit is contained in:
@@ -562,7 +562,12 @@ void QmakeProject::asyncUpdate()
|
||||
{
|
||||
m_asyncUpdateTimer.setInterval(UPDATE_INTERVAL);
|
||||
|
||||
m_qmakeVfs->invalidateCache();
|
||||
if (m_invalidateQmakeVfsContents) {
|
||||
m_invalidateQmakeVfsContents = false;
|
||||
m_qmakeVfs->invalidateContents();
|
||||
} else {
|
||||
m_qmakeVfs->invalidateCache();
|
||||
}
|
||||
|
||||
Q_ASSERT(!m_asyncUpdateFutureInterface);
|
||||
m_asyncUpdateFutureInterface = new QFutureInterface<void>();
|
||||
@@ -588,7 +593,7 @@ void QmakeProject::asyncUpdate()
|
||||
void QmakeProject::buildFinished(bool success)
|
||||
{
|
||||
if (success)
|
||||
m_qmakeVfs->invalidateContents();
|
||||
m_invalidateQmakeVfsContents = true;
|
||||
}
|
||||
|
||||
bool QmakeProject::supportsKit(const Kit *k, QString *errorMessage) const
|
||||
@@ -819,6 +824,7 @@ void QmakeProject::activeTargetWasChanged()
|
||||
}
|
||||
|
||||
m_activeTarget = activeTarget();
|
||||
m_invalidateQmakeVfsContents = true;
|
||||
|
||||
if (!m_activeTarget)
|
||||
return;
|
||||
|
@@ -181,6 +181,7 @@ private:
|
||||
// cached data during project rescan
|
||||
std::unique_ptr<QMakeGlobals> m_qmakeGlobals;
|
||||
int m_qmakeGlobalsRefCnt = 0;
|
||||
bool m_invalidateQmakeVfsContents = false;
|
||||
|
||||
QString m_qmakeSysroot;
|
||||
|
||||
|
Reference in New Issue
Block a user