[xslt] Extension Function Implementation



I am trying to create an xslt extension function for libxslt (c++). My extension function takes a string as input, then this string is parsed by xml parser, and the function returns this parsed xml. I return value by this _expression_:

void fnParse(xmlXPathParserContextPtr ctx, int nargs) { ... xmlXPathReturnNodeSet(ctx, xmlXPathNodeSetCreate(node)); }

But I have found that libxslt does not free node memory after use. It free xmlNodeSet, but not free the node which is stored in this nodeset. Perhaps I missed something important. What is the correct way to return an XML node in the extension function?  


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]