X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=tests%2Futils%2Fxml-utils%2Fpretty_xml.cpp;h=8a6e967a71da8c73c687fcf6c3cec23d88ce4fad;hb=f59edc7cf8bfcf1450ce2d9e649f70c1e6796da0;hp=3f296f0235342ca17b5c2e032984899b7071f93b;hpb=9617033a3a3229daabe17e38fbab802ec2e6e223;p=lttng-tools.git diff --git a/tests/utils/xml-utils/pretty_xml.cpp b/tests/utils/xml-utils/pretty_xml.cpp index 3f296f023..8a6e967a7 100644 --- a/tests/utils/xml-utils/pretty_xml.cpp +++ b/tests/utils/xml-utils/pretty_xml.cpp @@ -10,28 +10,30 @@ * This allows a more human friendly format for xml testing when problems occur. */ +#include "common.hpp" + +#include + +#include #include +#include -int main(void) -{ - xmlDocPtr doc = NULL; +namespace ll = lttng::libxml; - /* Init libxml. */ - xmlInitParser(); - xmlKeepBlanksDefault(0); +int main() +{ + const ll::global_parser_context global_parser_context; + const ll::parser_ctx_uptr parserCtx{ xmlNewParserCtxt() }; /* Parse the XML document from stdin. */ - doc = xmlParseFile("-"); + const ll::doc_uptr doc{ xmlCtxtReadFd( + parserCtx.get(), STDIN_FILENO, nullptr, nullptr, XML_PARSE_NOBLANKS) }; if (!doc) { - fprintf(stderr, "ERR parsing: xml input invalid"); + std::cerr << "Error: invalid XML input on stdin\n"; return -1; } - xmlDocFormatDump(stdout, doc, 1); - - xmlFreeDoc(doc); - /* Shutdown libxml. */ - xmlCleanupParser(); + xmlDocFormatDump(stdout, doc.get(), 1); return 0; }