From 8a7c7e5bd5d65ec34b665579b1577be51fdde285 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Sun, 11 Feb 2024 00:47:21 -0500 Subject: [PATCH] better logging presentation of chardata --- webcit-ng/server/caldav_reports.c | 33 ++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/webcit-ng/server/caldav_reports.c b/webcit-ng/server/caldav_reports.c index e6a13cef0..e2a4e081f 100644 --- a/webcit-ng/server/caldav_reports.c +++ b/webcit-ng/server/caldav_reports.c @@ -34,7 +34,7 @@ void caldav_xml_start(void *data, const char *el, const char **attr) { char indent[256]; indent[0] = 0; for (i=0; itag_nesting_level; ++i) { - strcat(indent, " "); + strcat(indent, "··"); } syslog(LOG_DEBUG, "%s<%s>", indent, el); for (i = 0; attr[i] != NULL; i += 2) { @@ -74,10 +74,7 @@ void caldav_xml_end(void *data, const char *el) { char indent[256]; indent[0] = 0; for (i=0; itag_nesting_level; ++i) { - strcat(indent, " "); - } - if (crp->Chardata != NULL) { - syslog(LOG_DEBUG, "%sCHARDATA: '%s'", indent, ChrPtr(crp->Chardata)); + strcat(indent, "··"); } syslog(LOG_DEBUG, "%s", indent, el); // end logging @@ -101,14 +98,36 @@ void caldav_xml_end(void *data, const char *el) { // XML parser callback -void caldav_xml_chardata(void *data, const XML_Char * s, int len) { +void caldav_xml_chardata(void *data, const XML_Char *s, int len) { struct cr_parms *crp = (struct cr_parms *) data; + char *app = malloc(len+1); + if (!app) { + return; + } + memcpy(app, s, len); + app[len] = 0; + +#ifdef DEBUG_XML_PARSE + // logging + int i; + char indent[256]; + indent[0] = 0; + for (i=0; itag_nesting_level; ++i) { + strcat(indent, "··"); + } + syslog(LOG_DEBUG, "%s%s", indent, app); + // end logging +#endif + + if (crp->Chardata == NULL) { crp->Chardata = NewStrBuf(); } - StrBufAppendBufPlain(crp->Chardata, s, len, 0); + //StrBufAppendBufPlain(crp->Chardata, s, len, 0); + StrBufAppendBufPlain(crp->Chardata, app, len, 0); + free(app); return; } -- 2.30.2