diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2018-04-06 12:21:34 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2018-04-06 11:05:45 +0000 |
commit | 300afe8b8d3a919b2e4d7e5f30e9d4dfd341eb1d (patch) | |
tree | 5901080c7f1442d8ec5598ed34fe11212809acfa /src/plugins/qbsprojectmanager/qbsrunconfiguration.h | |
parent | b9ae919cb75dbb029a29ef3a77694e097638ddfc (diff) |
QbsProjectManager: Cache run environment
Setting up the qbs run environment is not free, and the respective code
gets triggered from other plugins much more often than expected.
Task-number: QTCREATORBUG-20175
Change-Id: I6529718d20738140963486caef103d6d17958d50
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/qbsprojectmanager/qbsrunconfiguration.h')
-rw-r--r-- | src/plugins/qbsprojectmanager/qbsrunconfiguration.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h index 9976121606..a0cf9506b3 100644 --- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h +++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h @@ -28,7 +28,9 @@ #include <projectexplorer/runnables.h> #include <QCheckBox> +#include <QHash> #include <QLabel> +#include <QPair> #include <QStringList> #include <QWidget> @@ -83,6 +85,9 @@ private: void updateTarget(); + using EnvCache = QHash<QPair<QStringList, bool>, Utils::Environment>; + mutable EnvCache m_envCache; + QbsInstallStep *m_currentInstallStep = nullptr; // We do not take ownership! ProjectExplorer::BuildStepList *m_currentBuildStepList = nullptr; // We do not take ownership! QString m_uniqueProductName; |