diff --git a/src/plugins/duieditor/duieditor.cpp b/src/plugins/duieditor/duieditor.cpp
index 4cf32412da78f2c754edd450e1f766642df2c8e2..181cdef80a181888d9cdc0d7927bb0e8fd54bf2c 100644
--- a/src/plugins/duieditor/duieditor.cpp
+++ b/src/plugins/duieditor/duieditor.cpp
@@ -218,15 +218,11 @@ protected:
         _selections.append(sel);
     }
 
-    void highlight(AST::UiQualifiedId *qualifiedId)
+    void highlight(AST::UiQualifiedId *id)
     {
-        AST::UiQualifiedId *last = qualifiedId;
-        for (; last; last = last->next) {
-            if (! last->next)
-                break;
+        for (; id; id = id->next) {
+            highlight(id->identifierToken.begin(), id->identifierToken.end());
         }
-        highlight(qualifiedId->identifierToken.begin(),
-                  last->identifierToken.end());
     }
 
     virtual bool visit(AST::UiScriptBinding *node)