summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--Completion/Unix/Command/_git3
2 files changed, 5 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index f65eca8ce..47a7d47aa 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2007-10-04 Clint Adams <clint@zsh.org>
+ * 23905: Completion/Unix/Command/_git: remove useless gitdir
+ assignment and scope array locally in new __git_changed_files
+ function.
+
* Mikael Magnusson: 23903: Completion/Unix/Command/_git:
complete both modified and added files for git commit.
diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index dfb96558a..3a365e528 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -2627,8 +2627,7 @@ __git_unmerged_files () {
#this is for git-commit which can take files both git-added and not
(( $+functions[__git_changed_files] )) ||
__git_changed_files () {
- gitdir=$(_call_program gitdir git rev-parse --git-dir 2>/dev/null)
- __git_command_successful || return
+ local -a files
files=(${(ps:\0:)"$(_call_program files git diff-index -z --name-only HEAD 2>/dev/null)"})
__git_command_successful || return