summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 420e92f)
raw | patch | inline | side by side (parent: 420e92f)
author | Jakub Narebski <jnareb@gmail.com> | |
Fri, 25 Aug 2006 18:59:39 +0000 (20:59 +0200) | ||
committer | Junio C Hamano <junkio@cox.net> | |
Sat, 26 Aug 2006 02:41:05 +0000 (19:41 -0700) |
Preparation for converting git_blobdiff and git_blobdiff_plain
to use git-diff-tree patch format to generate patches.
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
to use git-diff-tree patch format to generate patches.
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
gitweb/gitweb.perl | patch | blob | history |
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 80de7b6b671527852aaec5f0e9bcfd36707c0bb2..56a47ab633272c3c8f55abe72f26567e30b5e885 100755 (executable)
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
my $patch_idx = 0;
my $in_header = 0;
my $patch_found = 0;
- my %diffinfo;
+ my $diffinfo;
print "<div class=\"patchset\">\n";
}
print "<div class=\"patch\">\n";
- %diffinfo = parse_difftree_raw_line($difftree->[$patch_idx++]);
+ if (ref($difftree->[$patch_idx]) eq "HASH") {
+ $diffinfo = $difftree->[$patch_idx];
+ } else {
+ $diffinfo = parse_difftree_raw_line($difftree->[$patch_idx]);
+ }
+ $patch_idx++;
# for now, no extended header, hence we skip empty patches
# companion to next LINE if $in_header;
- if ($diffinfo{'from_id'} eq $diffinfo{'to_id'}) { # no change
+ if ($diffinfo->{'from_id'} eq $diffinfo->{'to_id'}) { # no change
$in_header = 1;
next LINE;
}
- if ($diffinfo{'status'} eq "A") { # added
- print "<div class=\"diff_info\">" . file_type($diffinfo{'to_mode'}) . ":" .
+ if ($diffinfo->{'status'} eq "A") { # added
+ print "<div class=\"diff_info\">" . file_type($diffinfo->{'to_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash,
- hash=>$diffinfo{'to_id'}, file_name=>$diffinfo{'file'})},
- $diffinfo{'to_id'}) . "(new)" .
+ hash=>$diffinfo->{'to_id'}, file_name=>$diffinfo->{'file'})},
+ $diffinfo->{'to_id'}) . "(new)" .
"</div>\n"; # class="diff_info"
- } elsif ($diffinfo{'status'} eq "D") { # deleted
- print "<div class=\"diff_info\">" . file_type($diffinfo{'from_mode'}) . ":" .
+ } elsif ($diffinfo->{'status'} eq "D") { # deleted
+ print "<div class=\"diff_info\">" . file_type($diffinfo->{'from_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash_parent,
- hash=>$diffinfo{'from_id'}, file_name=>$diffinfo{'file'})},
- $diffinfo{'from_id'}) . "(deleted)" .
+ hash=>$diffinfo->{'from_id'}, file_name=>$diffinfo->{'file'})},
+ $diffinfo->{'from_id'}) . "(deleted)" .
"</div>\n"; # class="diff_info"
- } elsif ($diffinfo{'status'} eq "R" || # renamed
- $diffinfo{'status'} eq "C") { # copied
+ } elsif ($diffinfo->{'status'} eq "R" || # renamed
+ $diffinfo->{'status'} eq "C") { # copied
print "<div class=\"diff_info\">" .
- file_type($diffinfo{'from_mode'}) . ":" .
+ file_type($diffinfo->{'from_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash_parent,
- hash=>$diffinfo{'from_id'}, file_name=>$diffinfo{'from_file'})},
- $diffinfo{'from_id'}) .
+ hash=>$diffinfo->{'from_id'}, file_name=>$diffinfo->{'from_file'})},
+ $diffinfo->{'from_id'}) .
" -> " .
- file_type($diffinfo{'to_mode'}) . ":" .
+ file_type($diffinfo->{'to_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash,
- hash=>$diffinfo{'to_id'}, file_name=>$diffinfo{'to_file'})},
- $diffinfo{'to_id'});
+ hash=>$diffinfo->{'to_id'}, file_name=>$diffinfo->{'to_file'})},
+ $diffinfo->{'to_id'});
print "</div>\n"; # class="diff_info"
} else { # modified, mode changed, ...
print "<div class=\"diff_info\">" .
- file_type($diffinfo{'from_mode'}) . ":" .
+ file_type($diffinfo->{'from_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash_parent,
- hash=>$diffinfo{'from_id'}, file_name=>$diffinfo{'file'})},
- $diffinfo{'from_id'}) .
+ hash=>$diffinfo->{'from_id'}, file_name=>$diffinfo->{'file'})},
+ $diffinfo->{'from_id'}) .
" -> " .
- file_type($diffinfo{'to_mode'}) . ":" .
+ file_type($diffinfo->{'to_mode'}) . ":" .
$cgi->a({-href => href(action=>"blob", hash_base=>$hash,
- hash=>$diffinfo{'to_id'}, file_name=>$diffinfo{'file'})},
- $diffinfo{'to_id'});
+ hash=>$diffinfo->{'to_id'}, file_name=>$diffinfo->{'file'})},
+ $diffinfo->{'to_id'});
print "</div>\n"; # class="diff_info"
}