Window* win;
 
     hints_clear();
-    hints->mode = mode;
-
-    /* don't overwrite if zero */
-    if (prefixLength) {
-        hints->prefixLength = prefixLength;
-    }
+    hints->mode         = mode;
+    hints->prefixLength = prefixLength;
 
     doc = webkit_web_view_get_dom_document(WEBKIT_WEB_VIEW(vp.gui.webview));
     if (!doc) {
 
     if (num == 0) {
         /* recreate the hints */
-        hints_create(NULL, hints->mode, 0);
+        hints_create(NULL, hints->mode, hints->prefixLength);
         return;
     }
 
     const gchar* text = GET_TEXT();
 
     /* skip hinting prefixes like '.', ',', ';y' ... */
-    hints_create(text + vp.hints.prefixLength, vp.hints.mode, 0);
+    hints_create(text + vp.hints.prefixLength, vp.hints.mode, vp.hints.prefixLength);
 
     return TRUE;
 }