Main Koha release repository https://koha-community.org
Find a file
Jonathan Druart cc8f3dc1cc Bug 20540: Fix TransformHtmlToXml if last tag is empty
This bug has been found during testing bug 19289.

In some conditions C4::Biblio::TransformHtmlToXml will generate a malformed XML structure. The last </datafield> can be duplicated.

For instance, if a call like:
my $xml = TransformHtmlToXml( \@tags, \@subfields, \@field_values );

with the last value of @field_values is empty, it will return:

<?xml version="1.0" encoding="UTF-8"?>
<collection
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd"
  xmlns="http://www.loc.gov/MARC21/slim">
<record>
<datafield2 tag="020" ind1=" " ind2=" ">
<subfield code="a">l</subfield>
</datafield>
<datafield1 tag="100" ind1=" " ind2=" ">
<subfield code="a">k</subfield>
</datafield>
<datafield1 tag="245" ind1=" " ind2=" ">
<subfield code="a">k</subfield>
</datafield>
<datafield1 tag="250" ind1=" " ind2=" ">
<subfield code="a">k</subfield>
</datafield>
<datafield1 tag="260" ind1=" " ind2=" ">
<subfield code="b">k</subfield>
<subfield code="c">k</subfield>
</datafield>
</datafield>
</record>
</collection>

Which will result later in the following error:
:23: parser error : Opening and ending tag mismatch: record line 6 and datafield
</datafield>
            ^
:24: parser error : Opening and ending tag mismatch: collection line 2 and record
</record>
         ^
:25: parser error : Extra content at the end of the document
</collection>

Test plan:
You can test it along with bug 19289 and confirm that it fixes the problem
raised on bug 19289 comment 30

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2018-04-11 16:45:19 -03:00
acqui Bug 19812: Fix confusing holds count values in "Already received" table 2018-04-04 16:06:57 -03:00
admin Bug 19804: Add the new column to the circ rules interface 2018-04-09 16:15:19 -03:00
api/v1 Bug 19784: Adapt /v1/patrons to new naming guidelines 2018-03-29 11:42:08 -03:00
authorities Bug 20261: Fix pagination of the results in authority search 2018-04-05 14:17:30 -03:00
basket Bug 19040: Refactor GetMarcBiblio parameters 2017-08-25 10:23:42 -03:00
C4 Bug 20540: Fix TransformHtmlToXml if last tag is empty 2018-04-11 16:45:19 -03:00
catalogue Bug 20083: Information disclosure when (mis)using the MARC Preview feature 2018-04-04 15:40:07 -03:00
cataloguing Bug 20494: Remove unused code in neworderempty.pl and addbiblio.pl 2018-04-02 18:07:45 -03:00
circ Bug 18789: (follow-up) Pass a Koha::Patron object from returns.pl 2018-04-09 16:15:17 -03:00
clubs Bug 18632: Remove 'CGI::param called in list context' warnings 2017-05-28 22:25:22 -04:00
course_reserves Bug 19230: Preventing warn when deleting course 2018-01-30 14:18:21 -03:00
debian Bug 20123: Make the timezone entry empty and uncommented by default 2018-04-11 15:05:02 -03:00
docs Bug 7143: Update about page for new dev - Roch D'Amour 2018-04-03 11:43:06 -03:00
errors Bug 19998: use Modern::Perl in error perl scripts 2018-02-05 09:45:48 -03:00
etc Bug 20123: Make the timezone entry empty and uncommented by default 2018-04-11 15:05:02 -03:00
ill Bug 7317: Display all the libraries, not only one 2017-11-09 13:31:10 -03:00
installer Bug 20104: Update minimum version of Perl to 5.20 2018-04-11 16:45:09 -03:00
Koha Bug 18674: Allow TZ SetEnv for plack 2018-04-11 16:44:14 -03:00
koha-tmpl Bug 20104: Update minimum version of Perl to 5.20 2018-04-11 16:45:09 -03:00
labels Bug 12020: Allow translating label-edit-batch hardcoded strings 2018-03-26 17:31:15 -03:00
members Bug 20518: Don't show "Messages" header and link on patron details if there are no messages 2018-04-11 16:45:09 -03:00
misc Bug 19712: (follow-up) Add missing use Pod::Usage 2018-04-06 14:50:58 -03:00
offline_circ Bug 20018: use Modern::Perl in offline_circ scripts 2018-02-05 09:46:45 -03:00
opac Bug 20536: (ILL) authnotrequired should be explicitly unset on opac 2018-04-11 16:45:09 -03:00
OpenILS Bug 9239 QA follow-up: remove stray debug code 2013-03-16 21:32:34 -04:00
patron_lists Bug 19837: Add error feedback for duplicated or unfound cardnumbers 2018-02-18 16:48:46 -03:00
patroncards Bug 20010: use Modern::Perl in Patroncards perl scripts 2018-02-05 09:46:44 -03:00
plugins Bug 20011: use Modern::Perl in plugins perl scripts 2018-02-05 09:46:44 -03:00
reports Bug 9634: Allow for combining same paraneters in SQL reports 2018-04-11 16:45:08 -03:00
reserve Bug 11512: Forced holds that violate issuing rules will never be filled 2018-04-06 14:51:11 -03:00
reviews Bug 18789: Send Koha::Patron object to the templates 2018-02-16 13:03:58 -03:00
rotating_collections Bug 15758: Koha::Libraries - Remove GetBranches 2016-09-08 14:36:03 +00:00
serials Bug 20461: Serials: fix ignored params in subscription creation form 2018-03-26 17:31:07 -03:00
services Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
skel Bug 11078: Add locking to rebuild_zebra 2014-02-28 22:21:41 +00:00
suggestion Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
svc Bug 18403: Update permissions - borrowers => 1|* becomes borrowers => 'edit_borrowers' 2018-02-12 15:41:37 -03:00
t Bug 20540: Fix TransformHtmlToXml if last tag is empty 2018-04-11 16:45:19 -03:00
tags Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
test Bug 9819 - 'stopwords'-related code removed 2015-12-30 15:49:35 +00:00
tmp/modified_authorities
tools Bug 20180: [sql_modes] Remove GROUP BY clause in manage-marc-import.pl 2018-04-09 16:15:17 -03:00
virtualshelves Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
xt Bug 18979: Speed up 'valid-templates.t' tests 2018-04-02 18:07:45 -03:00
.editorconfig Bug 12545: Add EditorConfig.org file to the source tree 2014-08-22 11:07:45 -03:00
.gitignore Bug 20267: Add basic .gitignore 2018-03-26 17:31:16 -03:00
.htaccess Fix file permissions: if it is not a script, it should not be executable. 2010-04-16 00:40:34 -04:00
.mailmap Update mailmap - Jonathan Druart 2017-06-21 12:42:19 -03:00
about.pl Bug 18674: (QA follow-up) Add date and time 2018-04-11 16:45:08 -03:00
changelanguage.pl Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
edithelp.pl Bug 18403: Update permissions - borrowers => 1|* becomes borrowers => 'edit_borrowers' 2018-02-12 15:41:37 -03:00
fix-perl-path.PL Bug 9978: (followup) Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:43 -03:00
help.pl Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
INSTALL Bug 17626: Remove existing install instructions and link to the wiki pages instead 2016-11-22 11:29:07 +00:00
install-CPAN.pl Bug 9978: Replace license header with the correct license (GPLv3+) 2015-04-20 09:59:38 -03:00
Koha.pm Bug 19804: DBRev 17.12.00.026 2018-04-09 16:15:19 -03:00
koha_perl_deps.pl Bug 20019: use Modern::Perl in misc perl scripts 2018-02-05 09:47:08 -03:00
kohaversion.pl Bug 13758: Move the Koha version from kohaversion.pl 2015-05-07 11:39:04 -03:00
LICENSE Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
mainpage.pl Bug 18403: Article requests 2018-02-12 15:41:41 -03:00
Makefile.PL Bug 17951: (follow-up) Make Makefile.PL handle template_cache_dir config 2017-12-22 13:15:39 -03:00
MANIFEST.SKIP Bug 9546 : Updating make manifest tardist 2013-02-06 23:54:46 -05:00
README Bug 9440 - update Koha's LICENSE file from GPL2 to GPL3 2013-02-12 08:52:10 -05:00
README.md Bug 15465: Fix typo in bugs.k-c.org 2017-05-26 11:45:31 -03:00
README.robots Bug 6411 add another example to README.robots 2011-07-05 14:48:05 +12:00
rewrite-config.PL Bug 17951: (follow-up) Make Makefile.PL handle template_cache_dir config 2017-12-22 13:15:39 -03:00

Koha is a free software integrated library system (ILS).

Koha is distributed under the GNU GPL version 3 or later.

Note: This is a synced mirror of the official Koha repo.

Note: Koha does not accept pull requests from git hosting sites.

Note: This project has its own bug tracker, to report a bug or submit a patch visit http://bugs.koha-community.org.

For guidelines on submitting patches for Koha please visit https://wiki.koha-community.org/wiki/SubmitingAPatch

The developers handbook can be found at https://wiki.koha-community.org/wiki/Developer_handbook

http://koha-community.org/

Koha Logo