diff options
Diffstat (limited to 'contrib/mount')
-rw-r--r-- | contrib/mount | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/contrib/mount b/contrib/mount index 41afb07d..bfa2a273 100644 --- a/contrib/mount +++ b/contrib/mount @@ -29,7 +29,9 @@ _reply_compgen_array() ecur="${ecur/#$\'/\$\'}" # Actually generate completions. + local oldifs="$IFS" IFS=$'\n' eval 'COMPREPLY=(`compgen -W "$wlist" -- "${ecur}"`)' + IFS="$oldifs" # Strip starting $' in reply if present in cur. # This is necesarry because readline interprets everything after ' as a @@ -48,10 +50,14 @@ _linux_fstab() COMPREPLY=() # Read and unescape values into COMPREPLY + local fs_spec fs_file fs_other while read -r fs_spec fs_file fs_other; do if [[ $fs_spec = [#]* ]]; then continue; fi - [[ $fs_spec = */* ]] && { IFS=$'\0' eval "COMPREPLY+=( $'$fs_spec' )"; } - [[ $fs_file = */* ]] && { IFS=$'\0' eval "COMPREPLY+=( $'$fs_file' )"; } + local oldifs="$IFS" + IFS=$'\0' + [[ $fs_spec = */* ]] && eval "COMPREPLY+=( $'$fs_spec' )"; + [[ $fs_file = */* ]] && eval "COMPREPLY+=( $'$fs_file' )"; + IFS="$oldifs" done _reply_compgen_array |