1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 03:55:04 +03:00

xpath: Deprecate xmlXPathEvalExpr

Also check the argument instead of crashing if there's no context.
This commit is contained in:
Nick Wellnhofer 2024-09-13 21:06:36 +02:00
parent 03f1bdd260
commit c46b89e243
3 changed files with 5 additions and 1 deletions

View File

@ -516,6 +516,7 @@ XMLPUBFUN void
XMLPUBFUN void
xmlXPathRoot (xmlXPathParserContextPtr ctxt);
XML_DEPRECATED
XMLPUBFUN void
xmlXPathEvalExpr (xmlXPathParserContextPtr ctxt);
XMLPUBFUN xmlChar *

View File

@ -407,6 +407,7 @@ deprecated_funcs = {
'xmlValidatePushElement': True,
'xmlValidateRoot': True,
'xmlValidate': True,
'xmlXPathEvalExpr': True,
'xmlXPathInit': True,
'xmlXPtrEvalRangePredicate': True,
'xmlXPtrNewCollapsedRange': True,

View File

@ -12531,6 +12531,8 @@ xmlXPathCompiledEvalToBoolean(xmlXPathCompExprPtr comp,
* xmlXPathEvalExpr:
* @ctxt: the XPath Parser context
*
* DEPRECATED: Internal function, don't use.
*
* Parse and evaluate an XPath expression in the given context,
* then push the result on the context stack
*/
@ -12541,7 +12543,7 @@ xmlXPathEvalExpr(xmlXPathParserContextPtr ctxt) {
#endif
int oldDepth = 0;
if (ctxt == NULL)
if ((ctxt == NULL) || (ctxt->context == NULL))
return;
if (ctxt->context->lastError.code != 0)
return;