diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
index 1074618d32bf65be544fbf24b7d981a35bd0dbcc..919d65d5c8bf95ba37d13e0a16dfda503f6c759a 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
@@ -409,7 +409,7 @@ void FormEditorView::changeToCustomTool()
 {
     if (hasSelectedModelNodes()) {
         int handlingRank = 0;
-        AbstractCustomTool *selectedCustomTool;
+        AbstractCustomTool *selectedCustomTool = 0;
 
         ModelNode selectedModelNode = selectedModelNodes().first();
 
@@ -424,9 +424,11 @@ void FormEditorView::changeToCustomTool()
         if (handlingRank > 0) {
             m_scene->updateAllFormEditorItems();
             m_currentTool->clear();
-            m_currentTool = selectedCustomTool;
-            m_currentTool->clear();
-            m_currentTool->setItems(scene()->itemsForQmlItemNodes(toQmlItemNodeList(selectedModelNodes())));
+            if (selectedCustomTool) {
+                m_currentTool = selectedCustomTool;
+                m_currentTool->clear();
+                m_currentTool->setItems(scene()->itemsForQmlItemNodes(toQmlItemNodeList(selectedModelNodes())));
+            }
         }
     }
 }