When editing a biblio, if the 100$a input is incorrect, the error is not correcly handled and we get a crash with a message like : Unsupported UNIMARC character encoding [45] for XML output for UNIMARC; 100$a -> 0123456789A0123456789B0123456789C0123456789D0123456789E at /usr/share/perl5/MARC/File/XML.pm line 505.
I don't totally understand this field, would it make sense to use the SetMarcUnicodeFlag function found in C4/Charset ? Doing something like: if ( $is_a_modif ) { ModBiblioframework( $biblionumber, $frameworkcode ); ModBiblio( $record, $biblionumber, $frameworkcode ); } else { eval { C4::Charset::SetMarcUnicodeFlag( $record, $frameworkcode )}; if ( $@ ){ warn "ERROR when setting Marc unicode flag: " . $@; } else { ( $biblionumber, $oldbibitemnum ) = AddBiblio( $record, $frameworkcode ); } } where the code we have now is simply like: if ( $is_a_modif ) { ModBiblioframework( $biblionumber, $frameworkcode ); ModBiblio( $record, $biblionumber, $frameworkcode ); } else { ( $biblionumber, $oldbibitemnum ) = AddBiblio( $record, $frameworkcode ); } }
Adrien doesn't work anymore at BibLibre. Unassigning this bug to give it more visibility.
(In reply to Victor Grousset/tuxayo from comment #2) > Adrien doesn't work anymore at BibLibre. > Unassigning this bug to give it more visibility. Victor, would you be able to verify that the bug still exists? It seems related to UNIMARC as 100 has a different meaning in MARC21.