]> Lady’s Gitweb - Gitweb/blobdiff - gitweb.perl
gitweb: Fix error in git_patchest_body for file creation/deletion patch
[Gitweb] / gitweb.perl
index 852896a1e96495d96e81e1e2b7703d365e2a6d0ffa27678ebc5c3e1d546c0bf4..7d54919c9d0a3c09fb22c9eaf0caef555311fa009c569e745810c0659e4ca0b7 100755 (executable)
@@ -2379,7 +2379,6 @@ sub git_patchset_body {
        my $patch_line;
        my $diffinfo;
        my (%from, %to);
        my $patch_line;
        my $diffinfo;
        my (%from, %to);
-       my ($from_id, $to_id);
 
        print "<div class=\"patchset\">\n";
 
 
        print "<div class=\"patchset\">\n";
 
@@ -2393,6 +2392,7 @@ sub git_patchset_body {
  PATCH:
        while ($patch_line) {
                my @diff_header;
  PATCH:
        while ($patch_line) {
                my @diff_header;
+               my ($from_id, $to_id);
 
                # git diff header
                #assert($patch_line =~ m/^diff /) if DEBUG;
 
                # git diff header
                #assert($patch_line =~ m/^diff /) if DEBUG;
@@ -2440,11 +2440,15 @@ sub git_patchset_body {
                                $from{'href'} = href(action=>"blob", hash_base=>$hash_parent,
                                                     hash=>$diffinfo->{'from_id'},
                                                     file_name=>$from{'file'});
                                $from{'href'} = href(action=>"blob", hash_base=>$hash_parent,
                                                     hash=>$diffinfo->{'from_id'},
                                                     file_name=>$from{'file'});
+                       } else {
+                               delete $from{'href'};
                        }
                        if ($diffinfo->{'status'} ne "D") { # not deleted file
                                $to{'href'} = href(action=>"blob", hash_base=>$hash,
                                                   hash=>$diffinfo->{'to_id'},
                                                   file_name=>$to{'file'});
                        }
                        if ($diffinfo->{'status'} ne "D") { # not deleted file
                                $to{'href'} = href(action=>"blob", hash_base=>$hash,
                                                   hash=>$diffinfo->{'to_id'},
                                                   file_name=>$to{'file'});
+                       } else {
+                               delete $to{'href'};
                        }
                        # this is first patch for raw difftree line with $patch_idx index
                        # we index @$difftree array from 0, but number patches from 1
                        }
                        # this is first patch for raw difftree line with $patch_idx index
                        # we index @$difftree array from 0, but number patches from 1
This page took 0.193713 seconds and 4 git commands to generate.