From fc5d008dd51860f75a8b4c9fe2ef863054e18a9f Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Mon, 10 Jul 2017 11:56:46 -0300 Subject: [PATCH] Bug 18854: Protect few other occurrences of offset Signed-off-by: Marcel de Rooy Signed-off-by: Mason James --- C4/AuthoritiesMarc.pm | 2 +- Koha/SearchEngine/Elasticsearch/Search.pm | 3 ++- admin/auth_subfields_structure.pl | 3 ++- admin/auth_tag_structure.pl | 3 ++- admin/marc_subfields_structure.pl | 3 ++- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/C4/AuthoritiesMarc.pm b/C4/AuthoritiesMarc.pm index 34d498fe0a..c598f49222 100644 --- a/C4/AuthoritiesMarc.pm +++ b/C4/AuthoritiesMarc.pm @@ -238,7 +238,7 @@ sub SearchAuthorities { $query="\@or $orderstring $query" if $orderstring; } - $offset=0 unless $offset; + $offset = 0 if not defined $offset or $offset < 0; my $counter = $offset; $length=10 unless $length; my @oAuth; diff --git a/Koha/SearchEngine/Elasticsearch/Search.pm b/Koha/SearchEngine/Elasticsearch/Search.pm index 9411c0b966..d6da8f0b7a 100644 --- a/Koha/SearchEngine/Elasticsearch/Search.pm +++ b/Koha/SearchEngine/Elasticsearch/Search.pm @@ -323,7 +323,8 @@ sub simple_search_compat { return ('No query entered', undef, undef) unless $query; my %options; - $options{offset} = $offset // 0; + $offset = 0 if not defined $offset or $offset < 0; + $options{offset} = $offset; $max_results //= 100; unless (ref $query) { diff --git a/admin/auth_subfields_structure.pl b/admin/auth_subfields_structure.pl index ffa74f2746..0a21f9d2fa 100755 --- a/admin/auth_subfields_structure.pl +++ b/admin/auth_subfields_structure.pl @@ -51,7 +51,8 @@ my $input = new CGI; my $tagfield = $input->param('tagfield'); my $tagsubfield = $input->param('tagsubfield'); my $authtypecode = $input->param('authtypecode'); -my $offset = $input->param('offset') || 0; +my $offset = $input->param('offset'); +$offset = 0 if not defined $offset or $offset < 0; my $op = $input->param('op') || ''; my $script_name = "/cgi-bin/koha/admin/auth_subfields_structure.pl"; diff --git a/admin/auth_tag_structure.pl b/admin/auth_tag_structure.pl index f6f60fa776..3b06acf8f3 100755 --- a/admin/auth_tag_structure.pl +++ b/admin/auth_tag_structure.pl @@ -35,7 +35,8 @@ my $authtypecode = $input->param('authtypecode') || ''; # set my $existingauthtypecode = $input->param('existingauthtypecode') || ''; # set when we have to create a new framework (in authtype) by copying an old one (in existingauthtype) my $searchfield = $input->param('searchfield') || 0; -my $offset = $input->param('offset') || 0; +my $offset = $input->param('offset'); +$offset = 0 if not defined $offset or $offset < 0; my $op = $input->param('op') || ''; $searchfield =~ s/\,//g; diff --git a/admin/marc_subfields_structure.pl b/admin/marc_subfields_structure.pl index 175133a330..b1b00cccd1 100755 --- a/admin/marc_subfields_structure.pl +++ b/admin/marc_subfields_structure.pl @@ -64,7 +64,8 @@ my $tagfield = $input->param('tagfield'); my $tagsubfield = $input->param('tagsubfield'); my $frameworkcode = $input->param('frameworkcode'); my $pkfield = "tagfield"; -my $offset = $input->param('offset') || 0; +my $offset = $input->param('offset'); +$offset = 0 if not defined $offset or $offset < 0; my $script_name = "/cgi-bin/koha/admin/marc_subfields_structure.pl"; my ( $template, $borrowernumber, $cookie ) = get_template_and_user( -- 2.39.5