xmlXPathFreeContext API崩溃几次

时间:2019-05-12 12:17:53

标签: libxml2

我有一段代码有时可以很好地执行,而崩溃的次数很少。 XML API xmlXPathFreeContext发生崩溃。

不是XML方面的专家,所以不知道如何调试它。

xmlXPathObjectPtr SIQXmlParser::getnodeset (xmlDocPtr doc, xmlChar *xpath)
{

    xmlXPathContextPtr context;
    xmlXPathObjectPtr result;

    context = xmlXPathNewContext(doc);
    if (context == NULL) {
        printf("Error in xmlXPathNewContext\n");
        return NULL;
    }
    result = xmlXPathEvalExpression(xpath, context);
    xmlXPathFreeContext(context);
    if (result == NULL) {
        printf("Error in xmlXPathEvalExpression\n");
        return NULL;
    }
    if(xmlXPathNodeSetIsEmpty(result->nodesetval)){
        xmlXPathFreeObject(result);
                printf("No result\n");
        return NULL;
    }
    return result;
}

0 个答案:

没有答案