diff --git a/src/plugins/qmljseditor/qmljscodecompletion.cpp b/src/plugins/qmljseditor/qmljscodecompletion.cpp
index 5293f65daa8f22108b26062523a7825e8e367394..139e034539c8c5954bf2e9660ae4bbfc3e0cbe2c 100644
--- a/src/plugins/qmljseditor/qmljscodecompletion.cpp
+++ b/src/plugins/qmljseditor/qmljscodecompletion.cpp
@@ -703,7 +703,7 @@ int CodeCompletion::startCompletion(TextEditor::ITextEditable *editor)
         }
 
         // add qml extra words
-        if (document->qmlProgram()) {
+        if (document && document->qmlProgram()) {
             static QStringList qmlWords;
             if (qmlWords.isEmpty())
                 qmlWords << "property" << "readonly" << "signal";