[PATCH 5/5] gitweb: Fix split patches output (e.g. file to symlink)
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Jan 7, 2007, 01:52 UTC
- Message-ID
- <11681347551377-git-send-email-jnareb@gmail.com>
- In-Reply-To
- <100171.86639.qm@web31814.mail.mud.yahoo.com>
Do not replace /dev/null in two-line from-file/to-file diff header for split patches ("split" patch mean more than one patch per one diff-tree raw line) by a/file or b/file link.
Split patches differ from pair of deletion/creation patch in git diff header: both a/file and b/file are hyperlinks, in all patches in a split.
Signed-off-by: Jakub Narebski <jnareb@gmail.com> --- gitweb/gitweb.perl | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index d60d7c6..f46a422 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -2525,7 +2525,7 @@ sub git_patchset_body { last PATCH unless $patch_line; next PATCH if ($patch_line =~ m/^diff /); #assert($patch_line =~ m/^---/) if DEBUG; - if ($from{'href'}) { + if ($from{'href'} && $patch_line =~ m!^--- "?a/!) { $patch_line = '--- a/' . $cgi->a({-href=>$from{'href'}, -class=>"path"}, esc_path($from{'file'})); @@ -2537,7 +2537,7 @@ sub git_patchset_body { chomp $patch_line; #assert($patch_line =~ m/^+++/) if DEBUG; - if ($to{'href'}) { + if ($to{'href'} && $patch_line =~ m!^\+\+\+ "?b/!) { $patch_line = '+++ b/' . $cgi->a({-href=>$to{'href'}, -class=>"path"}, esc_path($to{'file'}));
-- 1.4.4.3