gitweb: fix commitdiff_plain for root commits
Signed-off-by: Matthias Lederhofer <matled@gmx.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
committed by
Junio C Hamano
parent
e349d21ab4
commit
1568515d5b
@ -2193,6 +2193,13 @@ sub git_commitdiff {
|
|||||||
|
|
||||||
sub git_commitdiff_plain {
|
sub git_commitdiff_plain {
|
||||||
mkdir($git_temp, 0700);
|
mkdir($git_temp, 0700);
|
||||||
|
my %co = git_read_commit($hash);
|
||||||
|
if (!%co) {
|
||||||
|
die_error(undef, "Unknown commit object");
|
||||||
|
}
|
||||||
|
if (!defined $hash_parent) {
|
||||||
|
$hash_parent = $co{'parent'} || '--root';
|
||||||
|
}
|
||||||
open my $fd, "-|", $GIT, "diff-tree", '-r', $hash_parent, $hash
|
open my $fd, "-|", $GIT, "diff-tree", '-r', $hash_parent, $hash
|
||||||
or die_error(undef, "Open git-diff-tree failed");
|
or die_error(undef, "Open git-diff-tree failed");
|
||||||
my @difftree = map { chomp; $_ } <$fd>;
|
my @difftree = map { chomp; $_ } <$fd>;
|
||||||
@ -2214,7 +2221,6 @@ sub git_commitdiff_plain {
|
|||||||
}
|
}
|
||||||
|
|
||||||
print $cgi->header(-type => "text/plain", -charset => 'utf-8', '-content-disposition' => "inline; filename=\"git-$hash.patch\"");
|
print $cgi->header(-type => "text/plain", -charset => 'utf-8', '-content-disposition' => "inline; filename=\"git-$hash.patch\"");
|
||||||
my %co = git_read_commit($hash);
|
|
||||||
my %ad = date_str($co{'author_epoch'}, $co{'author_tz'});
|
my %ad = date_str($co{'author_epoch'}, $co{'author_tz'});
|
||||||
my $comment = $co{'comment'};
|
my $comment = $co{'comment'};
|
||||||
print "From: $co{'author'}\n" .
|
print "From: $co{'author'}\n" .
|
||||||
|
|||||||
Reference in New Issue
Block a user