about summary refs log tree commit diff
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