| Summary: | wrong number of parameters in new_from_xml call | ||
|---|---|---|---|
| Product: | Koha | Reporter: | Didier Gautheron <didier.gautheron> |
| Component: | MARC Bibliographic record staging/import | Assignee: | Bugs List <koha-bugs> |
| Status: | NEW --- | QA Contact: | Testopia <testopia> |
| Severity: | normal | ||
| Priority: | P5 - low | CC: | jonathan.druart, julian.maurice |
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | All | ||
| GIT URL: | Initiative type: | --- | |
| Sponsorship status: | --- | Comma delimited list of Sponsors: | |
| Crowdfunding goal: | 0 | Patch complexity: | --- |
| Documentation contact: | Documentation submission: | ||
| Text to go in the release notes: | Version(s) released in: | ||
| Circulation function: | |||
Yes, that's wrong, it must be
$rowref->{'encoding'} , $marc_type
I tried to import a MARCXML file encoded in ISO-8859-1. I set the correct encoding in the form but no records were imported and I have this message in logfile:
bib-1.iso88591.marcxml: :15: parser error : Input is not proper UTF-8, indicate encoding !
Bytes: 0xE0 0x20 0x6D 0x6F
<subfield code="a">�</subfield>
The error is located in C4::ImportBatch::RecordsFromMARCXMLFile
MARC::File::XML::decode seems to ignore the encoding passed in parameters.
|
Hi, It seems to me that C4/ImportBatch.pm: my $old_marc = MARC::Record->new_from_xml(StripNonXmlChars($oldxml), 'UTF-8', $rowref->{'encoding'}, $marc_type); Is calling MARC::Record->new_from_xml with the wrong number of parameters and $marc_type is ignored it should be either: MARC::Record->new_from_xml(StripNonXmlChars($oldxml), 'UTF-8', $marc_type); or: MARC::Record->new_from_xml(StripNonXmlChars($oldxml),$rowref->{'encoding'} , $marc_type);