diff options
-rw-r--r-- | Bugzilla/Bug.pm | 4 | ||||
-rw-r--r-- | Bugzilla/WebService/Bug.pm | 12 |
2 files changed, 6 insertions, 10 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 302b58595..ba941788b 100644 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -270,10 +270,6 @@ use constant FIELD_MAP => { summary => 'short_desc', url => 'bug_file_loc', whiteboard => 'status_whiteboard', - - # These are special values for the WebService Bug.search method. - limit => 'LIMIT', - offset => 'OFFSET', }; use constant REQUIRED_FIELD_MAP => { diff --git a/Bugzilla/WebService/Bug.pm b/Bugzilla/WebService/Bug.pm index fd8ea8fef..14d56713c 100644 --- a/Bugzilla/WebService/Bug.pm +++ b/Bugzilla/WebService/Bug.pm @@ -493,19 +493,19 @@ sub search { } my %match_params = %{ $params }; - delete $params->{include_fields}; - delete $params->{exclude_fields}; + delete $match_params{include_fields}; + delete $match_params{exclude_fields}; # If no other parameters have been passed other than limit and offset # then we throw error if system is configured to do so. - if (!grep(!/^(limit|offset)$/i, keys %$params) + if (!grep(!/^(limit|offset)$/, keys %match_params) && !Bugzilla->params->{search_allow_no_criteria}) { ThrowUserError('buglist_parameters_required'); } - $options{order_columns} = [ split(/\s*,\s*/, delete $params->{order}) ] if $params->{order}; - $options{params} = $params; + $options{order_columns} = [ split(/\s*,\s*/, delete $match_params{order}) ] if $match_params{order}; + $options{params} = \%match_params; my $search = new Bugzilla::Search(%options); my ($data) = $search->data; @@ -518,7 +518,7 @@ sub search { my @bug_ids = map { $_->[0] } @$data; my $bug_objects = Bugzilla::Bug->new_from_list(\@bug_ids); - my @bugs = map { $self->_bug_to_hash($_, \%match_params) } @$bug_objects; + my @bugs = map { $self->_bug_to_hash($_, $params) } @$bug_objects; return { bugs => \@bugs }; } |