about summary refs log tree commit diff
path: root/Completion/Core/_alternative
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core/_alternative')
-rw-r--r--Completion/Core/_alternative7
1 files changed, 4 insertions, 3 deletions
diff --git a/Completion/Core/_alternative b/Completion/Core/_alternative
index 9d30884ae..a2fbd6b23 100644
--- a/Completion/Core/_alternative
+++ b/Completion/Core/_alternative
@@ -54,13 +54,14 @@ while _tags; do
 
         # If the action starts with a space, we just call it.
 
-        ${(e)=~action}
+        eval "action=( $action )"
+        "$action[@]"
       else
 
         # Otherwise we call it with the description-arguments built above.
 
-        action=( $=action )
-        ${(e)action[1]} "$subopts[@]" "$expl[@]" ${(e)~action[2,-1]}
+        eval "action=( $action )"
+        "$action[1]" "$subopts[@]" "$expl[@]" "${(@)action[2,-1]}"
       fi
     fi
   done