]> git.donarmstrong.com Git - debbugs.git/blobdiff - Debbugs/CGI.pm
fix incorrect lexical variables in Debbugs
[debbugs.git] / Debbugs / CGI.pm
index ea4d67b91a3f4e870a12ffb0d9735b7d7d0b36ee..1e87bb7748d0a214125303b9ce8958a9a75f75ad 100644 (file)
@@ -32,11 +32,12 @@ use HTML::Entities;
 use Debbugs::Common qw(getparsedaddrs);
 use Params::Validate qw(validate_with :types);
 use Debbugs::Config qw(:config);
+use Debbugs::Status qw(splitpackages);
 use Mail::Address;
 use POSIX qw(ceil);
 use Storable qw(dclone);
 
-my %URL_PARAMS = ();
+our %URL_PARAMS = ();
 
 
 BEGIN{
@@ -52,7 +53,7 @@ BEGIN{
                                qw(maybelink htmlize_addresslinks htmlize_maintlinks),
                               ],
                     util   => [qw(cgi_parameters quitcgi),
-                               qw(getmaintainers getpseudodesc splitpackages)
+                               qw(getpseudodesc)
                               ],
                     #status => [qw(getbugstatus)],
                    );
@@ -137,7 +138,8 @@ sub version_url{
                      found   => $found,
                      fixed   => $fixed,
                      (defined $width)?(width => $width):(),
-                     (defined $height)?(height => $height):()
+                     (defined $height)?(height => $height):(),
+                     (defined $width or defined $height)?(collapse => 1):(),
                     );
      return $url->as_string;
 }
@@ -153,7 +155,7 @@ Escapes html entities by calling HTML::Entities::encode_entities;
 sub html_escape{
      my ($string) = @_;
 
-     return HTML::Entities::encode_entities($string)
+     return HTML::Entities::encode_entities($string,q(<>&"'));
 }
 
 =head2 cgi_parameters
@@ -211,10 +213,6 @@ sub quitcgi {
 }
 
 
-my %common_bugusertags;
-
-
-
 =head HTML
 
 =head2 htmlize_bugs
@@ -340,14 +338,6 @@ sub htmlize_bugstatus {
     return $result;
 }
 
-# Split a package string from the status file into a list of package names.
-sub splitpackages {
-    my $pkgs = shift;
-    return unless defined $pkgs;
-    return map lc, split /[ \t?,()]+/, $pkgs;
-}
-
-
 =head2 htmlize_packagelinks
 
      htmlize_packagelinks
@@ -465,39 +455,10 @@ sub htmlize_maintlinks {
 }
 
 
-my $_maintainer;
-my $_maintainer_rev;
-sub getmaintainers {
-    return $_maintainer if $_maintainer;
-    my %maintainer;
-    my %maintainer_rev;
-    for my $file (@config{qw(maintainer_file maintainer_file_override)}) {
-        next unless defined $file;
-        my $maintfile = new IO::File $file,'r' or
-             &quitcgi("Unable to open $file: $!");
-        while(<$maintfile>) {
-             next unless m/^(\S+)\s+(\S.*\S)\s*$/;
-             ($a,$b)=($1,$2);
-             $a =~ y/A-Z/a-z/;
-             $maintainer{$a}= $b;
-             for my $maint (map {lc($_->address)} getparsedaddrs($b)) {
-                  push @{$maintainer_rev{$maint}},$a;
-             }
-        }
-        close($maintfile);
-    }
-    $_maintainer = \%maintainer;
-    $_maintainer_rev = \%maintainer_rev;
-    return $_maintainer;
-}
-sub getmaintainers_reverse{
-     return $_maintainer_rev if $_maintainer_rev;
-     getmaintainers();
-     return $_maintainer_rev;
-}
-
+our $_maintainer;
+our $_maintainer_rev;
 
-my $_pseudodesc;
+our $_pseudodesc;
 sub getpseudodesc {
     return $_pseudodesc if $_pseudodesc;
     my %pseudodesc;