You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@apr.apache.org by bu...@apache.org on 2012/04/14 00:31:59 UTC
DO NOT REPLY [Bug 53082] New: apr_xml_to_text does not properly
escape entities ("&")
https://issues.apache.org/bugzilla/show_bug.cgi?id=53082
Bug #: 53082
Summary: apr_xml_to_text does not properly escape entities
("&")
Product: APR
Version: HEAD
Platform: PC
OS/Version: Mac OS X 10.4
Status: NEW
Severity: normal
Priority: P2
Component: APR-util
AssignedTo: bugs@apr.apache.org
ReportedBy: Christopher.D.Knight@nasa.gov
Classification: Unclassified
the apr_xml_to_text (really the write_text) function should re-escape entities
to make valid XML CDATA blocks...For example:
--output of example code--
RESULT:
(40) <tag>test with an & in the middle</tag>
--example code--
#include <apr_pools.h>
#include <apr_xml.h>
int main(int argc, char **argv) {
apr_xml_parser *parser = NULL; apr_pool_t *pool = NULL; apr_xml_doc *pdoc =
NULL; int namespace_mapping[100];
char *testxml = "<?xml version=\"1.0\"?>\n<tag>test with an & in the
middle</tag>\n";
apr_pool_initialize(); apr_pool_create(&pool, NULL);
parser = apr_xml_parser_create(pool); apr_xml_parser_feed(parser, testxml,
strlen(testxml)); apr_xml_parser_done(parser, &pdoc);
const char *buf = NULL; apr_size_t buflen = 0;
apr_xml_to_text(pool, pdoc->root, APR_XML_X2T_FULL, pdoc->namespaces,
namespace_mapping, (const char **)&buf, &buflen);
printf("RESULT:\n(%ld) %s\n", buflen, buf);
apr_pool_destroy(pool); apr_pool_terminate();
}
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@apr.apache.org
For additional commands, e-mail: bugs-help@apr.apache.org