> On 3/9/2014 17:33, Nick Wellnhofer wrote: >> I can’t find out how to add a DTD (internal subset) to a document without >> poking into libxml2’s internal data structures. The obvious approach is to >> add a xmlDtdPtr using >> xmlAddPrevSibling on the document root. But this will cause a memory leak >> because xmlFreeDoc won’t free the DTD nodes. It only frees the DTDs pointed >> to by doc->intSubset and doc->extSubset. So do I have to deal with these >> struct members manually or is there a better way? >> > xmlCreateIntSubset() ? But it looks like you'll need to manually free > previous xmlDtd first.
Suppose that I already have a xmlDtdPtr, for example from another document. This question came up when trying to correctly implement the “replaceNode” method in the Perl bindings. Nick _______________________________________________ xml mailing list, project page http://xmlsoft.org/ xml@gnome.org https://mail.gnome.org/mailman/listinfo/xml