From 46a54aea22f0c74135619eb2ca7d3e1daef4e643 Mon Sep 17 00:00:00 2001 From: John Southworth Date: Wed, 7 Sep 2011 13:27:58 -0500 Subject: Fix some problems with the completion scripts 1. we don't need to call compopt -o filenames explicitly anymore the bash-completion scripts from the debian package do this more intelligently. 2. Restore shopts before running the command so that if the command is terminated with ctrl-c they will be set properly. --- etc/bash_completion.d/vyatta-op | 1 - functions/interpreter/vyatta-op-run | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/bash_completion.d/vyatta-op b/etc/bash_completion.d/vyatta-op index 5b2312c..c1d27c8 100644 --- a/etc/bash_completion.d/vyatta-op +++ b/etc/bash_completion.d/vyatta-op @@ -107,7 +107,6 @@ _vyatta_op_default_expand () _vyatta_op_expand else # after the first word => cannot be vyatta command so use original default - compopt -o filenames _filedir_xspec fi } diff --git a/functions/interpreter/vyatta-op-run b/functions/interpreter/vyatta-op-run index 2d578b9..8508c71 100644 --- a/functions/interpreter/vyatta-op-run +++ b/functions/interpreter/vyatta-op-run @@ -162,6 +162,7 @@ _vyatta_op_run () local ret=0 local cmd_regex="^(LESSOPEN=|less|pager|tail|/opt/vyatta/bin/vyatta-tshark-interface-port.pl).*" if [ -n "$run_cmd" ]; then + eval $restore_shopts if [[ -t 1 && "${args[1]}" == "show" && ! $run_cmd =~ $cmd_regex ]] ; then eval "($run_cmd) | ${VYATTA_PAGER:-cat}" else @@ -169,9 +170,9 @@ _vyatta_op_run () fi else echo -ne "\n Incomplete command: ${args[@]}\n\n" >&2 + eval $restore_shopts ret=1 fi - eval $restore_shopts return $ret } -- cgit v1.2.3