[Bash-completion-commits] ./current r1153: sudo bug solved.

David Paleino d.paleino at gmail.com
Mon Jun 23 13:05:28 UTC 2008


------------------------------------------------------------
revno: 1153
committer: David Paleino <d.paleino at gmail.com>
branch nick: current
timestamp: Mon 2008-06-23 15:05:28 +0200
message:
  sudo bug solved.
modified:
  bash_completion
  debian/changelog
-------------- next part --------------
=== modified file 'bash_completion'
--- a/bash_completion	2008-06-23 12:39:34 +0000
+++ b/bash_completion	2008-06-23 13:05:28 +0000
@@ -3193,7 +3193,7 @@
 		for (( i=0; i < ${#COMP_WORDS[@]} - 1; ++i )); do
 			COMP_WORDS[i]="${COMP_WORDS[i+1]}"
 		done
-		unset COMP_WORDS[${#COMP_WORDS[#]}-1]
+		unset COMP_WORDS[${#COMP_WORDS[@]}-1]
 	else
 		return
 	fi
@@ -3216,8 +3216,8 @@
 	# switches, get rid of them. Most definitely not foolproof.
 	done=
 	while [ -z $done ] ; do
-	cmd=${COMP_WORDS[0]}
-	    if [[ "$cmd" == -* ]] && [ $COMP_CWORD -ge 1 ]; then
+		cmd=${COMP_WORDS[0]}
+		if [[ "$cmd" == -* ]] && [[ $COMP_CWORD -ge 1 ]]; then
 	    	_remove_comp_word
 	    elif [[ "$cmd" == -* ]] && [[ $COMP_CWORD -eq 0 ]]; then
 	    	return
@@ -3226,7 +3226,7 @@
 	    fi
 	done
 
-	if [ $COMP_CWORD -eq 0 ]; then
+	if [[ $COMP_CWORD -eq 0 ]]; then
 		COMPREPLY=( $( compgen -c -- $cur ) )
 	elif complete -p $cmd &>/dev/null; then
 		cspec=$( complete -p $cmd )
@@ -3242,7 +3242,7 @@
 			func=${func%% *}
 			
 			if [[ ${#COMP_WORDS[@]} -ge 2 ]]; then
-				$func $cmd "${COMP_WORDS[${#COMP_WORDS[@]}-1]}" "${COMP_WORDS[${#COMP_WORDS[@]}-2]}"
+				$func $cmd "${COMP_WORDS[${#COMP_WORDS[@]}-1]}"	"${COMP_WORDS[${#COMP_WORDS[@]}-2]}"
 			else
 				$func $cmd "${COMP_WORDS[${#COMP_WORDS[@]}-1]}"
 			fi

=== modified file 'debian/changelog'
--- a/debian/changelog	2008-06-23 12:48:31 +0000
+++ b/debian/changelog	2008-06-23 13:05:28 +0000
@@ -1,10 +1,5 @@
 bash-completion (20080617.4) UNRELEASED; urgency=low
 
-	PLEASE DON'T UPLOAD YET --David 14:46
-	Found another bug (_command()-related probably):
-	$ sudo apt-get ins<TAB>
-	$ sudo apt-get insbash: #: syntax error: operand expected (error token is "#")
-	
   * Merged Ubuntu changes:
     - added quote(), quote_readline(), dequote() helper functions.
     - added _remove_word()



More information about the Bash-completion-commits mailing list