descrption of problem: updating biblio return undefined error if previouly linked authority does not exist in db steps to recreate: 1. link an authority to biblio 2. manually delete authority from db 3. either a. run link_bibs_to_authorities.pl or b. update the biblio from staff client 4. will return undefined error for field we wanted to clear all linked authorities subfield $9 from biblios. run into this error. fixed the code, but dont really know if it is the best approach. attaching code fix for reference. ######################################################################### AuthoritiesMarc.pm line 1194 added one line: return unless defined($record); } else { #fix undefined error if authorized heading does not exist in db return unless defined($record); # foreach my $field ($record->field('1..')) { ########################################################################## Biblio.pm line 669 added one line: return unless defined($authorized_heading); my $authorized_heading = C4::AuthoritiesMarc::GetAuthorizedHeading( { 'authid' => $authid } ); #fix undefined error if authorized heading does not exist in db return unless defined($authorized_heading); # return ($field->as_string('abcdefghijklmnopqrstuvwxyz') eq $authorized_heading);
*** Bug 9110 has been marked as a duplicate of this bug. ***
Looking at the code, this is still valid.
1. link an authority to biblio 2. manually delete authority from db 3. update the biblio from staff client => No crash Closing, please reopen with updated steps to recreate the problem if still valid.