]> git.evergreen-ils.org Git - OpenSRF.git/commit
LP1340982: Ignore both 'comment' and '#comment' nodes in Settings Parse.
authorJason Stephenson <jason@sigio.com>
Sun, 18 Feb 2018 17:12:13 +0000 (12:12 -0500)
committerGalen Charlton <gmc@equinoxinitiative.org>
Mon, 7 May 2018 19:38:48 +0000 (15:38 -0400)
commit2f7688068af65cbe44c460daf0835b25344e6cca
tree12f772276e56e0d50893329dbd4d9e0a12cb25e3
parent24a14a104c2a216664ab52311eb9f90955b75e31
LP1340982: Ignore both 'comment' and '#comment' nodes in Settings Parse.

Modify the XML2perl helper function in OpenSRF::Utils::SettingsParser
to ignore comment nodes that have names of comment and #comment.

To reproduce the bug:

1. Stop OpenSRF services.

2. Add a XML comment, any text betwen <!-- and -->, in the list of
MARC templates in the opensrf.xml file.

3. Restart OpenSRF services.

4. In the staff client, go to Cataloging->Create New MARC Record.

5. In the list of templates, you will #comment where you added the
comment. (NOTE: I only tested with 1 comment.  Things may get worse
with more than 1 comment.)

6. There will be an error like the following in the
open-ils.cat_stderr.log if you attempt to choose the #comment entry:

   Caught error from 'run' method: Exception: OpenSRF::EX::ERROR
   2018-02-18T11:24:30 OpenSRF::Application
   /usr/local/share/perl/5.22.1/OpenSRF/Application.pm:240 System
   ERROR: Unable to open MARC template file: HASH(0x2249928) :

To test the fix:

1. Leave the comments in the opensrf.xml file from before.

2. Apply this commit, do make and make install for OpenSRF.

3. Just to make sure, do make and make install for Evergreen.

4. Repeat steps 3 and 4 from above.

5. You should NOT see any templates named #comment.

Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
src/perl/lib/OpenSRF/Utils/SettingsParser.pm