diff options
-rw-r--r-- | debian/changelog | 1 | ||||
-rw-r--r-- | debian/patches/09-backport-to-fix-wildcard-completion.patch | 53 | ||||
-rw-r--r-- | debian/patches/series | 1 |
3 files changed, 55 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog index f7de9575..ec6438bf 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,7 @@ bash-completion (1:2.8-3) UNRELEASED; urgency=medium [Gabriel F. T. Gomes <gabriel@inconstante.eti.br>] * Revert `Extra fix for man completion' (from version 1:2.8-2). + * Fix wildcard completion. (Closes: #891667). -- Gabriel F. T. Gomes <gabriel@inconstante.eti.br> Sun, 04 Nov 2018 18:48:03 -0200 diff --git a/debian/patches/09-backport-to-fix-wildcard-completion.patch b/debian/patches/09-backport-to-fix-wildcard-completion.patch new file mode 100644 index 00000000..8c1a4e54 --- /dev/null +++ b/debian/patches/09-backport-to-fix-wildcard-completion.patch @@ -0,0 +1,53 @@ +commit 6ffde95c7ea257ff60cb51a263a8d33f4bb0898b +Author: dmerge <25472575+dmerge@users.noreply.github.com> +Date: Fri Apr 20 22:14:08 2018 -0700 + + _filedir: Refactor to remove heredoc-dependent loop + +diff --git a/bash_completion b/bash_completion +index 98d277bd..48fe5987 100644 +--- a/bash_completion ++++ b/bash_completion +@@ -553,12 +553,11 @@ _filedir() + _tilde "$cur" || return + + local -a toks +- local x tmp ++ local x reset + +- x=$( compgen -d -- "$cur" ) && +- while read -r tmp; do +- toks+=( "$tmp" ) +- done <<< "$x" ++ reset=$(shopt -po noglob); set -o noglob ++ toks=( $( compgen -d -- "$cur" ) ) ++ eval $reset + + if [[ "$1" != -d ]]; then + local quoted +@@ -567,17 +566,16 @@ _filedir() + # Munge xspec to contain uppercase version too + # http://thread.gmane.org/gmane.comp.shells.bash.bugs/15294/focus=15306 + local xspec=${1:+"!*.@($1|${1^^})"} +- x=$( compgen -f -X "$xspec" -- $quoted ) && +- while read -r tmp; do +- toks+=( "$tmp" ) +- done <<< "$x" ++ reset=$(shopt -po noglob); set -o noglob ++ toks+=( $( compgen -f -X "$xspec" -- $quoted ) ) ++ eval $reset + + # Try without filter if it failed to produce anything and configured to +- [[ -n ${COMP_FILEDIR_FALLBACK:-} && -n "$1" && ${#toks[@]} -lt 1 ]] && \ +- x=$( compgen -f -- $quoted ) && +- while read -r tmp; do +- toks+=( "$tmp" ) +- done <<< "$x" ++ [[ -n ${COMP_FILEDIR_FALLBACK:-} && -n "$1" && ${#toks[@]} -lt 1 ]] && { ++ reset=$(shopt -po noglob); set -o noglob ++ toks+=( $( compgen -f -- $quoted ) ) ++ eval $reset ++ } + fi + + if [[ ${#toks[@]} -ne 0 ]]; then diff --git a/debian/patches/series b/debian/patches/series index cc09e7f1..c5cebc15 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -7,4 +7,5 @@ 06-xpdf_support_compressed_pdf.patch 07-dpkg_support_raw-extract_vextract.patch 08-completion-for-cvs-log.patch +09-backport-to-fix-wildcard-completion.patch 99-use-install-data-hook.patch |