From eb0bda0238692662fd36f66582dd7b8cabd9265b Mon Sep 17 00:00:00 2001 From: miker Date: Tue, 2 Aug 2005 19:58:09 +0000 Subject: [PATCH] fixing bare "array" inside fieldmapper objects git-svn-id: svn://svn.open-ils.org/ILS/trunk@1586 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- OpenSRF/src/gateway/fieldmapper-c-xml-out.pl | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/OpenSRF/src/gateway/fieldmapper-c-xml-out.pl b/OpenSRF/src/gateway/fieldmapper-c-xml-out.pl index fc9e563402..7f7ef3e389 100755 --- a/OpenSRF/src/gateway/fieldmapper-c-xml-out.pl +++ b/OpenSRF/src/gateway/fieldmapper-c-xml-out.pl @@ -78,7 +78,7 @@ void _rest_xml_output(growing_buffer* buf, object* obj, char * fm_class, int fm_ int i; - if(fm_class ) { + if(fm_class) { tag = _lookup_fm_field(fm_class,fm_index); } else { tag = strdup("datum"); @@ -109,13 +109,20 @@ void _rest_xml_output(growing_buffer* buf, object* obj, char * fm_class, int fm_ else if (obj->is_array) { - if (!obj->classname) + if(!fm_class) buffer_add(buf,""); + else + buffer_fadd(buf,"<%s>",tag); + for( i = 0; i!= obj->size; i++ ) { _rest_xml_output(buf, obj->get_index(obj,i), obj->classname, i); } - if (!obj->classname) - buffer_add(buf,""); + + if(!fm_class) + buffer_add(buf,""); + else + buffer_fadd(buf,"",tag); + } else if (obj->is_hash) { buffer_add(buf,""); object_iterator* itr = new_iterator(obj); -- 2.43.2