From: Jakub Narebski Date: Sun, 6 Aug 2006 14:14:25 +0000 (+0200) Subject: gitweb: fix commitdiff for root commits X-Git-Tag: v1.4.3-rc1~274^2~5 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=b5ff2cf9a6a4246a5443e904acf3165e89654b1e;p=git.git gitweb: fix commitdiff for root commits After changing all "-|" open invocations to list form, commitdiff for initial commit (without parent) got broken; it returned incorrectly empty patch earlier. Use '--root' option to git-diff-tree for initial (root) commit. No checking for empty $hash_parent in git_commitdiff_plain -- we rely on gitweb to give correct parameters for commitdiff_plain action. Noticed by Matthias Lederhofer (matled). Signed-off-by: Jakub Narebski Signed-off-by: Junio C Hamano --- diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 5e72b4f61..9be35aebd 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -2109,7 +2109,7 @@ sub git_commitdiff { die_error(undef, "Unknown commit object"); } if (!defined $hash_parent) { - $hash_parent = $co{'parent'}; + $hash_parent = $co{'parent'} || '--root'; } open my $fd, "-|", $GIT, "diff-tree", '-r', $hash_parent, $hash or die_error(undef, "Open git-diff-tree failed");