aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/projectfilewizardextension.h
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@qt.io>2017-08-29 14:32:10 +0200
committerTobias Hunger <tobias.hunger@qt.io>2017-09-01 14:42:34 +0000
commit60b8712a4283be7dfdfe7d566c57a5ea85ff3be0 (patch)
treeda563cc37f187dd21643a0a3f6be2e3b048f416c /src/plugins/projectexplorer/projectfilewizardextension.h
parent1bcde48da917a8a34173088aa104ad669e14a17d (diff)
Wizards: Do not crash when adding files to existing projectv4.4.0
Do not crash when adding a file to an existing project that finishes parsing while the wizard is still open. Make sure the Node that is passed into the wizard is still valid after parsing. Provide more information to the wizard so that this can be checked -- and to find the similar node in the new project tree. Also avoid a crash when adding existing files. Do not crash when project parsing finishes while the wizard summary page is open. Do not crash when the project gets closed while the summary page is open. Do not have the ProjectTree send signals about subTreeChanges if the node that changed is not part of the ProjectTree. This avoids an infinite loop when updating the combobox on the summary page. Add a treeChanged signal to ProjectTree. Task-number: QTCREATORBUG-18651 Change-Id: Iaed3d0d1f079c09e54389821a11bda596139f35c Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'src/plugins/projectexplorer/projectfilewizardextension.h')
-rw-r--r--src/plugins/projectexplorer/projectfilewizardextension.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/projectfilewizardextension.h b/src/plugins/projectexplorer/projectfilewizardextension.h
index fe9d3f8d92..df1c61a650 100644
--- a/src/plugins/projectexplorer/projectfilewizardextension.h
+++ b/src/plugins/projectexplorer/projectfilewizardextension.h
@@ -31,6 +31,8 @@
namespace ProjectExplorer {
class FolderNode;
+class Node;
+class Project;
namespace Internal {
@@ -52,6 +54,7 @@ public slots:
void firstExtensionPageShown(const QList<Core::GeneratedFile> &files, const QVariantMap &extraValues) override;
private:
+ Node *findWizardContextNode(Node *contextNode, Project *project, const QString &path);
bool processProject(const QList<Core::GeneratedFile> &files,
bool *removeOpenProjectAttribute, QString *errorMessage);