ProjectNodes: Make FolderNode::replaceSubtree safer

Make it safe for an existing note to replace itself.

Change-Id: I8ce04ea45cb851c814b9efbc7d8490c5fb44150e
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Tobias Hunger
2017-05-15 13:02:36 +02:00
parent 03ca6a9172
commit 6dc6eb9ad0

View File

@@ -45,6 +45,7 @@
#include <QDir>
#include <QIcon>
#include <QStyle>
#include <QTimer>
#include <memory>
@@ -610,7 +611,7 @@ bool FolderNode::replaceSubtree(Node *oldNode, Node *newNode)
} else {
removeNode(oldNode); // Happens e.g. when project is shutting down
}
delete oldNode;
QTimer::singleShot(0, [oldNode]() { delete oldNode; });
}
ProjectTree::emitSubtreeChanged(this);
return true;