about summary refs log tree commit diff
path: root/Completion/Core
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core')
-rw-r--r--Completion/Core/_sort_tags2
-rw-r--r--Completion/Core/_tags6
2 files changed, 7 insertions, 1 deletions
diff --git a/Completion/Core/_sort_tags b/Completion/Core/_sort_tags
index 778a6000b..bc12e5974 100644
--- a/Completion/Core/_sort_tags
+++ b/Completion/Core/_sort_tags
@@ -26,3 +26,5 @@ case "$curcontext" in
 esac
 
 comptry "$@"
+
+return 0
diff --git a/Completion/Core/_tags b/Completion/Core/_tags
index 1884717e2..6e3966074 100644
--- a/Completion/Core/_tags
+++ b/Completion/Core/_tags
@@ -44,7 +44,11 @@ if (( $# )); then
     for tag in $order; do
       case $tag in
       -)     nodef=yes;;
-      *\(\)) "${${tag%%[ 	]#\(\)}##[ 	]#}" "$@";;
+      *\(\)) if ! "${${tag%%[ 	]#\(\)}##[ 	]#}" "$@"; then
+               nodef=yes
+               break
+             fi
+             ;;
       \!*)   comptry "${(@)argv:#(${(j:|:)~${=tag[2,-1]}})}";;
       ?*)    comptry ${=tag};;
       esac