Description of problem: Enabling the shell option failglob causes completion to fail with the error message "no match". Version-Release number of selected component (if applicable): 1:bash-completion-1.2-2.fc13.noarch bash-4.1.7-1.fc13.i686 How reproducible: Every time Steps to Reproduce: 1. # yum install bash-completion 2. shopt -s failglob 3. cvs c<TAB> Actual results: bash: no match: words[0]=${!ref}${COMP_WORDS[i]} Expected results: checkout commit Additional info:
Discussing upstream: http://thread.gmane.org/gmane.comp.shells.bash.completion.devel/2546
https://alioth.debian.org/tracker/index.php?func=detail&aid=312741&group_id=100114&atid=413095
http://wiki.debian.org/Teams/BashCompletion/Proposals/Roadmap Also in upstream roadmap for version 3.0. It will take a while until we get there, so closing UPSTREAM.
Two years after, bug is still there (fedora17/bash-completion-2.0-1.fc17.noarch) For those who encountered same bug, here is an ugly workaround for ugly code : bash_completion:281 __reassemble-comp_words_by_ref # Append word to current word #BEGIN HACK if shopt failglob >/dev/null; then INVERTGLOB=1 shopt -u failglob else INVERTGLOB=0 fi #END HACK eval $2[$j]=\${!ref}\${COMP_WORDS[i]} #BEGIN HACK if [ $INVERTGLOB -eq 1 ]; then
shopt -s failglob fi #END HACK # Remove optional whitespace + word from line copy