From c32fcdb68584a24987afdc2eb3052e14ff822037 Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Thu, 2 May 2019 14:20:45 +0200 Subject: [PATCH] Bug 22830: correct for loop in value_builder/unimarc_field_4XX.pl value_builder In value_builder/unimarc_field_4XX.pl value_builder gets search results and runs a for loog with $i index. This loop is limiter with number of results par page, it should also be limited by number of results if lower that number of results par page. Same in cataloguing/value_builder/marc21_linking_section.pl. Test plan : 1) configure framework to use value builder 2) use value builder 3) perform a search with number of results lower than number of results par page 4) check number of records diplayed is OK 5) perform a search with number of results upper than number of results par page and check number of results is OK 6) you see number of results par page records and pagination link --- cataloguing/value_builder/marc21_linking_section.pl | 2 +- cataloguing/value_builder/unimarc_field_4XX.pl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cataloguing/value_builder/marc21_linking_section.pl b/cataloguing/value_builder/marc21_linking_section.pl index 0fb9b7bcfe..f537516c04 100755 --- a/cataloguing/value_builder/marc21_linking_section.pl +++ b/cataloguing/value_builder/marc21_linking_section.pl @@ -213,7 +213,7 @@ my $launcher = sub { } my @arrayresults; my @field_data = ($search); - for ( my $i = 0 ; $i < $resultsperpage ; $i++ ) { + for ( my $i = 0 ; $i < $total && $i < $resultsperpage ; $i++ ) { my $record = C4::Search::new_record_from_zebra( 'biblioserver', $results->[$i] ); my $rechash = TransformMarcToKoha( $record ); my $pos; diff --git a/cataloguing/value_builder/unimarc_field_4XX.pl b/cataloguing/value_builder/unimarc_field_4XX.pl index c51434954c..5b95f14581 100755 --- a/cataloguing/value_builder/unimarc_field_4XX.pl +++ b/cataloguing/value_builder/unimarc_field_4XX.pl @@ -399,7 +399,7 @@ sub plugin { my @field_data = ($search); for ( my $i = 0 ; - $i < $resultsperpage ; + $i < $total && $i < $resultsperpage ; $i++ ) { -- 2.17.1