diff --git a/src/plugins/duieditor/duieditor.cpp b/src/plugins/duieditor/duieditor.cpp
index 33c67aeaa2075b74c39f4f0e008bcae5f7c37407..0fa7bf24802cf7eee7fc0cac6f6519bfc8242158 100644
--- a/src/plugins/duieditor/duieditor.cpp
+++ b/src/plugins/duieditor/duieditor.cpp
@@ -409,10 +409,10 @@ void ScriptEditor::updateDocumentNow()
 
     bool parsed = parser.parse(&driver);
 
-    if (parsed) {
-        IdDeclarations updateIds;
-        m_ids = updateIds(parser.ast());
+    IdDeclarations updateIds;
+    m_ids = updateIds(parser.ast());
 
+    if (parsed) {
         if (DuiHighlighter *highlighter = qobject_cast<DuiHighlighter*>(baseTextDocument()->syntaxHighlighter())) {
             HighlightBindings highlightIds(document());
             highlightIds.setFormat(highlighter->labelTextCharFormat());