diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
index 9cc920b4684561edc721f3d72ae7a25eeb8f7e1a..d7ca5fb7c90ff27795b3a360d92e43fbf698cb96 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
@@ -188,8 +188,8 @@ void FormEditorView::nodeAboutToBeRemoved(const ModelNode &removedNode)
      }
 
      foreach (FormEditorItem *item, m_scene->allFormEditorItems()) {
-         delete item;
          m_scene->removeItemFromHash(item);
+         delete item;
      }
 
      QmlModelView::rootNodeTypeChanged(type, majorVersion, minorVersion);