]> git.donarmstrong.com Git - debbugs.git/blobdiff - cgi/version.cgi
* Fix display of distributions in the version graph
[debbugs.git] / cgi / version.cgi
index b5967be6ef778f7a5c0af453698cba9a96caf0fc..01db818528b1177d2364e3124572d7e470d9f27b 100755 (executable)
@@ -20,7 +20,7 @@ use Debbugs::Config qw(:config);
 use Debbugs::CGI qw(htmlize_packagelinks html_escape cgi_parameters munge_url);
 use Debbugs::Versions;
 use Debbugs::Versions::Dpkg;
-use Debbugs::Packages qw(getversions makesourceversions);
+use Debbugs::Packages qw(get_versions makesourceversions);
 use HTML::Entities qw(encode_entities);
 use File::Temp qw(tempdir);
 use IO::File;
@@ -55,7 +55,10 @@ my $this = munge_url('version.cgi?',
 my %versions;
 my %version_to_dist;
 for my $dist (@{$config{distributions}}) {
-     $versions{$dist} = [getversions($cgi_var{package},$dist)];
+     $versions{$dist} = [get_versions(package => [split /\s*,\s*/, $cgi_var{package}],
+                                     dist => $dist,
+                                     source => 1,
+                                    )];
      # make version_to_dist
      foreach my $version (@{$versions{$dist}}){
          push @{$version_to_dist{$version}}, $dist;
@@ -103,9 +106,9 @@ END
 
 # then figure out which are affected.
 # turn found and fixed into full versions
-@{$cgi_var{found}} = makesourceversions($cgi_var{package},undef,@{$cgi_var{found}});
-@{$cgi_var{fixed}} = makesourceversions($cgi_var{package},undef,@{$cgi_var{fixed}});
-my @interesting_versions = makesourceversions($cgi_var{package},undef,keys %version_to_dist);
+@{$cgi_var{found}} = map {makesourceversions($_,undef,@{$cgi_var{found}})} split/\s*,\s*/, $cgi_var{package};
+@{$cgi_var{fixed}} = map {makesourceversions($_,undef,@{$cgi_var{fixed}})} split/\s*,\s*/, $cgi_var{package};
+my @interesting_versions = map {makesourceversions($_,undef,keys %version_to_dist)} split/\s*,\s*/, $cgi_var{package};
 
 # We need to be able to rip out leaves which the versions that do not affect the current versions of unstable/testing
 my %sources;
@@ -238,8 +241,8 @@ foreach my $key (keys %all_states) {
                                          or $all_states{$key} eq 'absent');
      next if $cgi_var{ignore_boring} and not version_relevant($version,$key,\@interesting_versions);
      my @attributes = @{$state{$all_states{$key}}};
-     if (length $short_version and exists $version_to_dist{$short_version}) {
-         push @attributes, 'label="'.$key.'\n'."(".join(', ',@{$version_to_dist{$short_version}}).")\"";
+     if (exists $version_to_dist{$key}) {
+         push @attributes, 'label="'.$key.'\n'."(".join(', ',@{$version_to_dist{$key}}).")\"";
      }
      my $node_attributes = qq("$key" [).join(',',@attributes).qq(]\n);
      $dot .= $node_attributes;