about summary refs log tree commit diff
path: root/Completion/X
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2002-01-07 14:39:44 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2002-01-07 14:39:44 +0000
commit540618a4fbb7f4f1245fcee86e6f8470fe12b3e3 (patch)
treedfd99856c04282280a20dbe236f0130ebf39d2a3 /Completion/X
parent90bbd87734053303751d401a807be8a7fe3b9176 (diff)
downloadzsh-540618a4fbb7f4f1245fcee86e6f8470fe12b3e3.tar.gz
zsh-540618a4fbb7f4f1245fcee86e6f8470fe12b3e3.tar.xz
zsh-540618a4fbb7f4f1245fcee86e6f8470fe12b3e3.zip
fix nested _tags-loops by re-initialising the outer one when leaving the inner one (16407)
Diffstat (limited to 'Completion/X')
-rw-r--r--Completion/X/Command/_netscape5
1 files changed, 3 insertions, 2 deletions
diff --git a/Completion/X/Command/_netscape b/Completion/X/Command/_netscape
index 48b3fab7b..617ec37de 100644
--- a/Completion/X/Command/_netscape
+++ b/Completion/X/Command/_netscape
@@ -1,6 +1,6 @@
 #compdef netscape
 
-local curcontext="$curcontext" state line ret=1 suf
+local curcontext="$curcontext" state line ret=1 suf files
 typeset -A opt_args
 
 _x_arguments -C \
@@ -68,7 +68,7 @@ fi
 if [[ "$state" = "urls" ]]; then
   _tags files urls
   while _tags; do
-    _requested files expl 'file' _files "$@" && ret=0
+    _requested files expl 'file' _files "$@" && files=yes ret=0
     if _requested urls; then
       # Complete netscape urls
       if compset -P about: ; then
@@ -87,6 +87,7 @@ if [[ "$state" = "urls" ]]; then
 	  done
 	  (( ret )) || return 0
 	done
+        [[ -z "$files" ]] && _tags files
       fi
     fi
     (( ret )) || return 0