]> git.donarmstrong.com Git - debbugs.git/blobdiff - Debbugs/CGI/Bugreport.pm
Also mark up records of the form 'Removed indication that bug 2 blocks 10'.
[debbugs.git] / Debbugs / CGI / Bugreport.pm
index ba4c7a4f30ee3185b9eb5dc377a177bc914b18da..7cff47fd68e273a6ea9231b91234a94c513db926 100644 (file)
@@ -35,6 +35,7 @@ use Params::Validate qw(validate_with :types);
 use Debbugs::MIME qw(convert_to_utf8 decode_rfc1522 create_mime_message);
 use Debbugs::CGI qw(:url :html :util);
 use Debbugs::Common qw(globify_scalar english_join);
+use Debbugs::Config qw(:config);
 use POSIX qw(strftime);
 
 BEGIN{
@@ -255,8 +256,8 @@ sub display_entity {
             length $config{cve_tracker}
            ) {
             # Add links to CVE vulnerabilities (closes #568464)
-            $body =~ s{(CVE-\d{4}-\d{4,})}
-                      {<a href="http://$config{cve_tracker}$1">$1</a>}gx;
+            $body =~ s{(^|\s)(CVE-\d{4}-\d{4,})(\s|[,.-\[\]]|$)}
+                      {$1<a href="http://$config{cve_tracker}$2">$2</a>$3}gxm;
         }
         if (not exists $param{att}) {
              print {$param{output}} qq(<pre class="message">$body</pre>\n);
@@ -338,6 +339,9 @@ sub handle_record{
                       (\d+(?:,\s+\d+)*(?:\,?\s+and\s+\d+)?)}
                      {$1.(defined $3?$2.bug_links(bug=>$3):'').$4.
                           english_join([map {bug_links(bug=>$_)} (split /\,?\s+(?:and\s+)?/, $5)])}xeo;
+         $output =~ s{([Aa]dded|[Rr]emoved)( indication that bug )(\d+)( blocks )([\d\s\,]+)}
+                     {$1.$2.(bug_links(bug=>$3)).$4.
+                          english_join([map {bug_links(bug=>$_)} (split /\,?\s+(?:and\s+)?/, $5)])}eo;
          # Add links to reassigned packages
          $output =~ s{(Bug reassigned from package \`)([^']+?)((?:'|\&\#39;) to \`)([^']+?)((?:'|\&\#39;))}
          {$1.q(<a href=").html_escape(pkg_url(pkg=>$2)).qq(">$2</a>).$3.q(<a href=").html_escape(pkg_url(pkg=>$4)).qq(">$4</a>).$5}eo;