From 16df6d75044a6b1d64bb0ab4f0bded4b4699d5d6 Mon Sep 17 00:00:00 2001 From: Matthias Meusburger Date: Wed, 18 Dec 2013 11:20:05 +0100 Subject: [PATCH] Bug 11412: fix potential bulkmarcimport crash when searching for duplicates in authorities bulkmarcimport.pl can crash when searching for duplicates if the 005 field from the incoming or local record is not defined. This patch fixes it. Signed-off-by: Chris Cormack Test plan 1/ Create a record with no 005 field 2/ Try to import it checking for duplicates, notice it crashes 3/ Try with a record with a 005 field, but the one in Koha missing one, still crashes 4/ Apply patch 5/ No more crash Signed-off-by: Katrin Fischer Passes all tests and QA script. Patch fixes the problem described for importing authorities with the bulkmarcimport.pl when trying to match with existing records. Signed-off-by: Galen Charlton (cherry picked from commit 28d97e322805a42680527232b151754b4778aed8) Signed-off-by: Fridolin SOMERS --- misc/migration_tools/bulkmarcimport.pl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/misc/migration_tools/bulkmarcimport.pl b/misc/migration_tools/bulkmarcimport.pl index 9ca7b31e14..545e8182a8 100755 --- a/misc/migration_tools/bulkmarcimport.pl +++ b/misc/migration_tools/bulkmarcimport.pl @@ -245,7 +245,9 @@ RECORD: while ( ) { $id = GetRecordId( $marcrecord, $tagid, $subfieldid ); if ( $authorities && $marcFlavour ) { #Skip if authority in database is the same as the on in database - if ( $marcrecord->field('005')->data >= $record->field('005')->data ) { + if ( $marcrecord->field('005') && $record->field('005') && + $marcrecord->field('005')->data && $record->field('005')->data && + $marcrecord->field('005')->data >= $record->field('005')->data ) { if ($yamlfile) { $yamlhash->{$originalid}->{'authid'} = $id; -- 2.39.5