summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJürgen Kreileder <jk@blackdown.de>2013-04-08 22:10:21 +0200
committerJunio C Hamano <gitster@pobox.com>2013-04-08 14:26:53 -0700
commit05230637060d2e64f4e68eaf6823b0497533411a (patch)
tree98ed6611756138db2d9e520e303ca6a23cab7512
parent029a5bec595a04038232679e418df6cc87043081 (diff)
downloadgit-05230637060d2e64f4e68eaf6823b0497533411a.tar.gz
gitweb: Fix broken blob action parameters on blob/commitdiff pagesjk/gitweb-utf8
Fix broken blob action parameters on blobdiff and commitdiff pages by explicitly passing variables instead of relying on global ones. (The broken parameters on blob links lead to blob pages which show the blob but with a hash instead of a commit message and have broken blob_plain (404 - Cannot find file) and tree links (404 - Reading tree failed)) Signed-off-by: Jürgen Kreileder <jk@blackdown.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xgitweb/gitweb.perl15
1 files changed, 8 insertions, 7 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 671ac82e86..0c83b2adf5 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -2258,7 +2258,7 @@ sub format_extended_diff_header_line {
# format from-file/to-file diff header
sub format_diff_from_to_header {
- my ($from_line, $to_line, $diffinfo, $from, $to, @parents) = @_;
+ my ($from_line, $to_line, $diffinfo, $from, $to, $hash, @parents) = @_;
my $line;
my $result = '';
@@ -2324,7 +2324,7 @@ sub format_diff_from_to_header {
# create note for patch simplified by combined diff
sub format_diff_cc_simplified {
- my ($diffinfo, @parents) = @_;
+ my ($diffinfo, $hash, @parents) = @_;
my $result = '';
$result .= "<div class=\"diff header\">" .
@@ -3592,7 +3592,8 @@ sub parse_ls_tree_line {
# generates _two_ hashes, references to which are passed as 2 and 3 argument
sub parse_from_to_diffinfo {
- my ($diffinfo, $from, $to, @parents) = @_;
+ my ($diffinfo, $from, $to, $hash, @parents) = @_;
+ my ($hash_parent) = $parents[0];
if ($diffinfo->{'nparents'}) {
# combined diff
@@ -5312,7 +5313,7 @@ sub git_patchset_body {
if ($is_combined) {
while ($to_name ne $diffinfo->{'to_file'}) {
print "<div class=\"patch\" id=\"patch". ($patch_idx+1) ."\">\n" .
- format_diff_cc_simplified($diffinfo, @hash_parents) .
+ format_diff_cc_simplified($diffinfo, $hash, @hash_parents) .
"</div>\n"; # class="patch"
$patch_idx++;
@@ -5324,7 +5325,7 @@ sub git_patchset_body {
}
# modifies %from, %to hashes
- parse_from_to_diffinfo($diffinfo, \%from, \%to, @hash_parents);
+ parse_from_to_diffinfo($diffinfo, \%from, \%to, $hash, @hash_parents);
# this is first patch for raw difftree line with $patch_idx index
# we index @$difftree array from 0, but number patches from 1
@@ -5367,7 +5368,7 @@ sub git_patchset_body {
print format_diff_from_to_header($last_patch_line, $patch_line,
$diffinfo, \%from, \%to,
- @hash_parents);
+ $hash, @hash_parents);
# the patch itself
LINE:
@@ -5404,7 +5405,7 @@ sub git_patchset_body {
# generate anchor for "patch" links in difftree / whatchanged part
print "<div class=\"patch\" id=\"patch". ($patch_idx+1) ."\">\n" .
- format_diff_cc_simplified($diffinfo, @hash_parents) .
+ format_diff_cc_simplified($diffinfo, $hash, @hash_parents) .
"</div>\n"; # class="patch"
$patch_number++;