f1a8bc9
diff --git a/contrib/vncviewer b/contrib/vncviewer
f1a8bc9
index 1e6e3eb..d3e5c59 100644
f1a8bc9
--- a/contrib/vncviewer
f1a8bc9
+++ b/contrib/vncviewer
f1a8bc9
@@ -1,22 +1,27 @@
f1a8bc9
 # bash completion for vncviewer
f1a8bc9
 
f1a8bc9
 have vncviewer &&
f1a8bc9
-_vncviewer_bootstrap() {
f1a8bc9
+_vncviewer_bootstrap()
f1a8bc9
+{
f1a8bc9
     local fname
f1a8bc9
     case "$(_realcommand vncviewer)" in
f1a8bc9
-        # If `vncviewer' not installed, default file-dir completion
f1a8bc9
-        '') _filedir `_get_cword` ;;
f1a8bc9
         *xvnc4viewer)      fname=_xvnc4viewer    ;;
f1a8bc9
-        *tightvncviewer|*) fname=_tightvncviewer ;;
f1a8bc9
+        *tightvncviewer)   fname=_tightvncviewer ;;
f1a8bc9
+        *)                 fname=_vncviewer      ;;
f1a8bc9
     esac
f1a8bc9
-    if [ $fname ]; then
f1a8bc9
-        # Install real completion for subsequent completions
f1a8bc9
-        complete -F $fname vncviewer
f1a8bc9
-        $fname  # Generate completions once for now
f1a8bc9
-        unset -f _vncviewer_bootstrap
f1a8bc9
-    fi
f1a8bc9
+
f1a8bc9
+    # Install real completion for subsequent completions
f1a8bc9
+    complete -F $fname vncviewer
f1a8bc9
+    $fname  # Generate completions once for now
f1a8bc9
+    unset -f _vncviewer_bootstrap
f1a8bc9
 } &&
f1a8bc9
-complete -F _vncviewer_bootstrap vncviewer
f1a8bc9
+complete -F _vncviewer_bootstrap vncviewer &&
f1a8bc9
+_vncviewer()
f1a8bc9
+{
f1a8bc9
+    COMPREPLY=()
f1a8bc9
+    local cur=`_get_cword`
f1a8bc9
+    _known_hosts_real "$cur"
f1a8bc9
+}
f1a8bc9
 
f1a8bc9
 have tightvncviewer &&
f1a8bc9
 _tightvncviewer()