diff options
Diffstat (limited to 'Bugzilla/Search.pm')
-rw-r--r-- | Bugzilla/Search.pm | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/Bugzilla/Search.pm b/Bugzilla/Search.pm index da217c43d..3e28b6d8e 100644 --- a/Bugzilla/Search.pm +++ b/Bugzilla/Search.pm @@ -115,8 +115,6 @@ sub init { my $dbh = Bugzilla->dbh; - &::GetVersionTable(); - # First, deal with all the old hard-coded non-chart-based poop. if (grep(/map_assigned_to/, @$fieldsref)) { push @supptables, "INNER JOIN profiles AS map_assigned_to " . @@ -182,25 +180,26 @@ sub init { # into their equivalent lists of open and closed statuses. if ($params->param('bug_status')) { my @bug_statuses = $params->param('bug_status'); - if (scalar(@bug_statuses) == scalar(@::legal_bug_status) + my @legal_statuses = @{get_legal_field_values('bug_status')}; + if (scalar(@bug_statuses) == scalar(@legal_statuses) || $bug_statuses[0] eq "__all__") { $params->delete('bug_status'); } elsif ($bug_statuses[0] eq '__open__') { $params->param('bug_status', map(is_open_state($_) ? $_ : undef, - @::legal_bug_status)); + @legal_statuses)); } elsif ($bug_statuses[0] eq "__closed__") { $params->param('bug_status', map(is_open_state($_) ? undef : $_, - @::legal_bug_status)); + @legal_statuses)); } } if ($params->param('resolution')) { my @resolutions = $params->param('resolution'); - - if (scalar(@resolutions) == scalar(@::legal_resolution)) { + my $legal_resolutions = get_legal_field_values('resolution'); + if (scalar(@resolutions) == scalar(@$legal_resolutions)) { $params->delete('resolution'); } } @@ -924,7 +923,6 @@ sub init { }, "^keywords,(?!changed)" => sub { - &::GetVersionTable(); my @list; my $table = "keywords_$chartid"; foreach my $value (split(/[\s,]+/, $v)) { |