From decc1b1aa1e515f5be42e4bc9484ce001740b1e4 Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Tue, 13 Apr 2010 16:15:13 +0200 Subject: Fix crash for double deleted items Reviewed-by: kkoehne (cherry picked from commit 05f43cd6ba5448e9ce9e8a02943305ec2c86f80a) --- .../qmldesigner/components/formeditor/formeditorscene.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp index 267d2678f7..b02538e48a 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp @@ -367,7 +367,14 @@ void FormEditorScene::setPaintMode(PaintMode paintMode) void FormEditorScene::clearFormEditorItems() { - foreach (QGraphicsItem *item, items()) { + QList itemList(items()); + + foreach (QGraphicsItem *item, itemList) { + if (qgraphicsitem_cast(item)) + item->setParentItem(0); + } + + foreach (QGraphicsItem *item, itemList) { if (qgraphicsitem_cast(item)) delete item; } -- cgit v1.2.3