Re: [PATCH 1/3] Fix potential command line overflow in hooks--update

Previous thread: Including the release notes in the git-1.5.0 release? by Theodore Ts'o on Tuesday, February 13, 2007 - 7:13 am. (1 message)

Next thread: [PATCH 3/3] diffstat generation in hooks--update was passing "^baserev" to git-diff-tree by Andy Parkins on Tuesday, February 13, 2007 - 7:24 am. (3 messages)
From: Andy Parkins
Date: Tuesday, February 13, 2007 - 7:23 am

In a repository with a large number of refs, the following command line
could easily overflow the command line size limitations

 git-rev-list $newref $(git-rev-parse --not --all)

Fortunately, git-rev-list already has the means to cope with this
situation with the --stdin switch

 git-rev-parse --not --all | git-rev-list --stdin $newref

Which is exactly what this patch does.

Signed-off-by: Andy Parkins <andyparkins@gmail.com>
---
 templates/hooks--update |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/templates/hooks--update b/templates/hooks--update
index d4253cb..e8c536f 100644
--- a/templates/hooks--update
+++ b/templates/hooks--update
@@ -148,7 +148,7 @@ case "$refname_type" in
 			# This shows all log entries that are not already covered by
 			# another ref - i.e. commits that are now accessible from this
 			# ref that were previously not accessible
-			git-rev-list --pretty $newref $(git-rev-parse --not --all)
+			git-rev-parse --not --all | git-rev-list --stdin --pretty $newref
 			echo $LOGEND
 		else
 			# oldrev is valid
-- 
1.5.0.rc4.364.g85b1


-

From: Junio C Hamano
Date: Tuesday, February 13, 2007 - 11:03 am

Thanks, applied.

-

Previous thread: Including the release notes in the git-1.5.0 release? by Theodore Ts'o on Tuesday, February 13, 2007 - 7:13 am. (1 message)

Next thread: [PATCH 3/3] diffstat generation in hooks--update was passing "^baserev" to git-diff-tree by Andy Parkins on Tuesday, February 13, 2007 - 7:24 am. (3 messages)