From: Henri-Damien LAURENT Date: Wed, 19 Nov 2008 13:58:20 +0000 (+0100) Subject: Adding some Error proof on GetAuthority X-Git-Tag: ontop~153 X-Git-Url: http://git.rot13.org/?a=commitdiff_plain;h=e5d1bced257f96893a5e9126cfb51d66d86dc09f;p=koha.git Adding some Error proof on GetAuthority return undef if there is a problem Signed-off-by: Galen Charlton --- diff --git a/C4/AuthoritiesMarc.pm b/C4/AuthoritiesMarc.pm index b1029e67ce..6c56e09c30 100644 --- a/C4/AuthoritiesMarc.pm +++ b/C4/AuthoritiesMarc.pm @@ -711,8 +711,9 @@ sub GetAuthority { my $sth=$dbh->prepare("select authtypecode, marcxml from auth_header where authid=?"); $sth->execute($authid); my ($authtypecode, $marcxml) = $sth->fetchrow; - my $record=MARC::Record->new_from_xml(StripNonXmlChars($marcxml),'UTF-8', - (C4::Context->preference("marcflavour") eq "UNIMARC"?"UNIMARCAUTH":C4::Context->preference("marcflavour"))); + my $record=eval {MARC::Record->new_from_xml(StripNonXmlChars($marcxml),'UTF-8', + (C4::Context->preference("marcflavour") eq "UNIMARC"?"UNIMARCAUTH":C4::Context->preference("marcflavour")))}; + return undef if ($@); $record->encoding('UTF-8'); if (C4::Context->preference("marcflavour") eq "MARC21") { my ($auth_type_tag, $auth_type_subfield) = get_auth_type_location($authtypecode);