Fix argument expansion in __git_alias

This commit is contained in:
Josh Hagins
2015-01-20 22:21:39 -05:00
parent 5ea1e69405
commit 84b765eab9

View File

@@ -64,11 +64,11 @@ _git
# Usage: __git_alias <alias> <command_prefix> <command> # Usage: __git_alias <alias> <command_prefix> <command>
__git_alias () { __git_alias () {
if [ -n "$1" ]; then if [ -n "$1" ]; then
local alias_str="$1"; local cmd_prefix="$2"; local cmd="$3"; local cmd_args="${4-}" local alias_str="$1"; local cmd_prefix="$2"; local cmd="$3"; local cmd_args=("${@:4}")
alias $alias_str="$cmd_prefix $cmd${cmd_args:+ }$cmd_args" alias $alias_str="$cmd_prefix $cmd${cmd_args:+ }${cmd_args[*]}"
if [ "$shell" = "bash" ]; then if [ "$shell" = "bash" ]; then
__define_git_completion $alias_str $cmd __define_git_completion "$alias_str" "$cmd"
complete -o default -o nospace -F _git_"$alias_str"_shortcut $alias_str complete -o default -o nospace -F _git_"$alias_str"_shortcut "$alias_str"
fi fi
fi fi
} }