threads / patch / 6798

patch, 3 partsFix potential command line overflow in hooks--update

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

## tl;dr

2 messages between Feb 13, 2007 and Feb 13, 2007. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Andy Parkins· Feb 13, 2007, 14:23 UTC · lore

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(-)
Show changes to templates/hooks--update +1 −1
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
Junio C Hamano· Feb 13, 2007, 18:03 UTC · re: Andy Parkins · lore

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

Andy Parkins <andyparkins@gmail.com> writes:
> In a repository with a large number of refs, the following command line
> could easily overflow the command line size limitations
> ...
Thanks, applied.

← back to recent threads