forked from qt-creator/qt-creator
TreeModel: Ensure deterministic state during child destruction
This allows tree items to rely on not being part of a model inside their destuctors. Change-Id: I5f19739d3701426b068a07bf82f5199fbb259f29 Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
This commit is contained in:
@@ -624,7 +624,7 @@ TreeItem::TreeItem(const QStringList &displays, int flags)
|
|||||||
|
|
||||||
TreeItem::~TreeItem()
|
TreeItem::~TreeItem()
|
||||||
{
|
{
|
||||||
clear();
|
removeChildren();
|
||||||
delete m_displays;
|
delete m_displays;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -818,6 +818,7 @@ void TreeItem::clear()
|
|||||||
{
|
{
|
||||||
while (m_children.size()) {
|
while (m_children.size()) {
|
||||||
TreeItem *item = m_children.takeLast();
|
TreeItem *item = m_children.takeLast();
|
||||||
|
item->m_model = 0;
|
||||||
item->m_parent = 0;
|
item->m_parent = 0;
|
||||||
delete item;
|
delete item;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user