From 8bd54203126322392abeab29144c6240e0f95e27 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Fri, 7 Jul 2023 15:50:52 +0200 Subject: [PATCH] Bug 33497: Don't get host items if the MARC record is invalid When don't want to explode with "invalid data" later so we need to condition the host_item search call trace was Koha::Biblio::Metadata::record('Koha::Biblio::Metadata=HASH(0x55ab92e60120)') called at /kohadevbox/koha/Koha/Biblio.pm line 538 Koha::Biblio::_host_itemnumbers('Koha::Biblio=HASH(0x55ab92e4d5c0)') called at /kohadevbox/koha/Koha/Biblio.pm line 498 Koha::Biblio::items('Koha::Biblio=HASH(0x55ab92e4d5c0)', 'HASH(0x55ab934615d8)') called at /kohadevbox/koha/catalogue/detail.pl line 200 This is fixing t/db_dependent/selenium/regressions.t Signed-off-by: Tomas Cohen Arazi --- catalogue/detail.pl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/catalogue/detail.pl b/catalogue/detail.pl index eb609bd6f2..5892acc1d8 100755 --- a/catalogue/detail.pl +++ b/catalogue/detail.pl @@ -193,13 +193,16 @@ my $itemtypes = { map { $_->itemtype => $_ } @{ Koha::ItemTypes->search_with_loc my $params; my $patron = Koha::Patrons->find( $borrowernumber ); $params->{ itemlost } = 0 if $patron->category->hidelostitems && !$showallitems; -my $items = $biblio->items({ host_items => 1 })->search_ordered( $params, { prefetch => ['issue','current_branchtransfers'] } ); +my $items_params = { + ( $invalid_marc_record ? () : ( host_items => 1 ) ), +}; +my $items = $biblio->items($items_params)->search_ordered( $params, { prefetch => ['issue','current_branchtransfers'] } ); # flag indicating existence of at least one item linked via a host record my $hostrecords = $biblio->host_items->count; my $dat = &GetBiblioData($biblionumber); -$dat->{'count'} = $biblio->items({ host_items => 1 })->count; +$dat->{'count'} = $biblio->items($items_params)->count; $dat->{'showncount'} = $items->count; $dat->{'hiddencount'} = $dat->{'count'} - $dat->{'showncount'};