diff options
author | lpsolit%gmail.com <> | 2009-05-23 20:19:08 +0200 |
---|---|---|
committer | lpsolit%gmail.com <> | 2009-05-23 20:19:08 +0200 |
commit | 35626e6efffd5660091d94d1599f12fc3ae83115 (patch) | |
tree | 6e28d242012e95d7f0e840c3d774d837bdda99e3 | |
parent | 58dedffde8e1e909e5d64f11b131453b0d477e70 (diff) | |
download | bugzilla-35626e6efffd5660091d94d1599f12fc3ae83115.tar.gz bugzilla-35626e6efffd5660091d94d1599f12fc3ae83115.tar.xz |
Bug 487330: Links in comments pointing to patches should go to the 'diff' view rather than the plain text view, by default - Patch by uokrent@gmail.com r/a=LpSolit
-rw-r--r-- | Bugzilla/Template.pm | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Bugzilla/Template.pm b/Bugzilla/Template.pm index 8c34bb493..3a46fad88 100644 --- a/Bugzilla/Template.pm +++ b/Bugzilla/Template.pm @@ -277,8 +277,8 @@ sub get_attachment_link { detaint_natural($attachid) || die "get_attachment_link() called with non-integer attachment number"; - my ($bugid, $isobsolete, $desc) = - $dbh->selectrow_array('SELECT bug_id, isobsolete, description + my ($bugid, $isobsolete, $desc, $is_patch) = + $dbh->selectrow_array('SELECT bug_id, isobsolete, description, ispatch FROM attachments WHERE attach_id = ?', undef, $attachid); @@ -296,9 +296,21 @@ sub get_attachment_link { $link_text =~ s/ \[details\]$//; my $linkval = "attachment.cgi?id=$attachid"; + + # If the attachment is a patch, try to link to the diff rather + # than the text, by default. + my $patchlink = ""; + if ($is_patch) { + # Determine if PatchReader is installed + my $patchviewer_installed = eval { require PatchReader; }; + if ($patchviewer_installed) { + $patchlink = '&action=diff'; + } + } + # Whitespace matters here because these links are in <pre> tags. return qq|<span class="$className">| - . qq|<a href="${linkval}" name="attach_${attachid}" title="$title">$link_text</a>| + . qq|<a href="${linkval}${patchlink}" name="attach_${attachid}" title="$title">$link_text</a>| . qq| <a href="${linkval}&action=edit" title="$title">[details]</a>| . qq|</span>|; } |