From: miker Date: Mon, 21 May 2007 16:33:29 +0000 (+0000) Subject: ignore non-leaf text nodes X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=c9187dc2a28b714592aee006c5ec28ca64b0e210;p=Evergreen.git ignore non-leaf text nodes git-svn-id: svn://svn.open-ils.org/ILS/trunk@7353 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/OpenSRF/src/utils/xml_utils.c b/OpenSRF/src/utils/xml_utils.c index 15a350b770..cb2164fc94 100644 --- a/OpenSRF/src/utils/xml_utils.c +++ b/OpenSRF/src/utils/xml_utils.c @@ -48,10 +48,16 @@ jsonObject* _xmlToJSON(xmlNodePtr node, jsonObject* obj) { } xmlNodePtr child = node->children; - while(child) { - _xmlToJSON(child, new_obj); - child = child->next; - } + if (child) { // at least one... + if (child != node->last) { // more than one -- ignore TEXT nodes + while(child) { + if (child->type != XML_TEXT_NODE) _xmlToJSON(child, new_obj); + child = child->next; + } + } else { + _xmlToJSON(child, new_obj); + } + } } return obj;