From 383077e0dad4708a80031b733a789e693e7a9110 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Sat, 24 Mar 2018 15:16:07 +0100 Subject: 42520: don't use an empty but existing option cache in netcat completion --- ChangeLog | 3 +++ Completion/Unix/Command/_netcat | 9 +++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 78ebfcbfb..7fa1074e1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2018-03-24 Oliver Kiddle + * 42520: Completion/Unix/Command/_netcat: don't use an empty + but existing option cache in netcat completion + * 42521 based on 42049 (SATOH Fumiyasu): Completion/Unix/Command/_make: make always includes relative to the current directory rather than relative to the Makefile diff --git a/Completion/Unix/Command/_netcat b/Completion/Unix/Command/_netcat index 4e4006b30..250d4c85d 100644 --- a/Completion/Unix/Command/_netcat +++ b/Completion/Unix/Command/_netcat @@ -6,11 +6,12 @@ if [[ $service = nc ]] && ! _pick_variant netcat=connect nedit -h; then return fi -if (( ! $+_nc_args )); then +if (( ! $#_cache_nc_args )); then + typeset -ga _cache_nc_args local help="$(_call_program options $words[1] -h < /dev/null 2>&1)" local -A optionmap optionmap=( - '*-e prog*' '-e+[program to exec after connect]:prog:_command_names -e' + '*-e prog*' '-e+[program to exec after connect]:program:_command_names -e' '*-g gateway*' '-g+[source-routing hop point]:gateway:_hosts' '*-G num*' '-G[source-routing pointer: 4, 8, 12]' '*-i secs*' '-i+[delay interval for lines sent or ports scanned]:delay (secs)' @@ -28,10 +29,10 @@ if (( ! $+_nc_args )); then '*-x*' '-x' '*-b*' '-b[allow broadcasts]' ) - _nc_args=($optionmap[(K)"$help"]) + _cache_nc_args=( $optionmap[(K)"$help"] ) fi _arguments -s \ - "$_nc_args[@]" \ + "$_cache_nc_args[@]" \ ':host:_hosts' \ ':port:_ports' -- cgit 1.4.1