char * cr_xml_dump_repomd(cr_Repomd *repomd, GError **err) { xmlDocPtr doc; xmlNodePtr root; char *result; assert(!err || *err == NULL); if (!repomd) { g_set_error(err, CREATEREPO_C_ERROR, CRE_BADARG, "No repomd object to dump specified"); return NULL; } // Dump IT! doc = xmlNewDoc(BAD_CAST XML_DOC_VERSION); root = xmlNewNode(NULL, BAD_CAST "repomd"); cr_xml_dump_repomd_body(root, repomd); xmlDocSetRootElement(doc, root); xmlDocDumpFormatMemoryEnc(doc, (xmlChar **) &result, NULL, XML_ENCODING, FORMAT_XML); // Clean up xmlFreeDoc(doc); return result; }
char * cr_xml_dump_repomd(cr_Repomd *repomd, GError **err) { xmlDocPtr doc; xmlNodePtr root; char *result; assert(!err || *err == NULL); if (!repomd) return NULL; // Dump IT! doc = xmlNewDoc(BAD_CAST XML_DOC_VERSION); root = xmlNewNode(NULL, BAD_CAST "repomd"); cr_xml_dump_repomd_body(root, repomd); xmlDocSetRootElement(doc, root); xmlDocDumpFormatMemoryEnc(doc, (xmlChar **) &result, NULL, XML_ENCODING, FORMAT_XML); // Clean up xmlFreeDoc(doc); return result; }