]> git.donarmstrong.com Git - debbugs.git/blobdiff - cgi/bugreport.cgi
pass uri_escape to templates in bugreport.cgi
[debbugs.git] / cgi / bugreport.cgi
index 5f88e18e6fc2023701b1f6f6f6a1a64a37a4485a..013175b01d2fe10c2336eb87a9a5f6502a45c06d 100755 (executable)
@@ -29,8 +29,8 @@ use Debbugs::Status qw(splitpackages split_status_fields get_bug_status isstrong
 use Scalar::Util qw(looks_like_number);
 
 use Debbugs::Text qw(:templates);
-
-use List::Util qw(max);
+use URI::Escape qw(uri_escape_utf8);
+use List::AllUtils qw(max);
 
 
 use CGI::Simple;
@@ -274,8 +274,8 @@ END
           next if @records > 1 and $spam->is_spam($msg_id);
       my @lines;
       if ($record->{inner_file}) {
-          push @lines, $record->{fh}->getline;
-          push @lines, $record->{fh}->getline;
+          push @lines, scalar $record->{fh}->getline;
+          push @lines, scalar $record->{fh}->getline;
           chomp $lines[0];
           chomp $lines[1];
       } else {
@@ -415,7 +415,9 @@ $status{blockedby_array} = [];
 if (@blockedby && $status{"pending"} ne 'fixed' && ! length($status{done})) {
     for my $b (@blockedby) {
         my %s = %{get_bug_status($b)};
-        next if $s{"pending"} eq 'fixed' || length $s{done};
+        next if (defined $s{pending} and
+                 $s{"pending"} eq 'fixed') or
+                     length $s{done};
        push @{$status{blockedby_array}},{bug_num => $b, subject => $s{subject}, status => \%s};
    }
 }
@@ -452,6 +454,7 @@ print fill_in_template(template => 'cgi/bugreport',
                                     msg           => $msg,
                                     isstrongseverity => \&Debbugs::Status::isstrongseverity,
                                     html_escape   => \&Debbugs::CGI::html_escape,
+                                     uri_escape    => \&URI::Escape::uri_escape_utf8,
                                     looks_like_number => \&Scalar::Util::looks_like_number,
                                     make_list        => \&Debbugs::Common::make_list,
                                    },