mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-03-10 08:58:16 +03:00
Fix a potential freeing error in XPath
This commit is contained in:
parent
ae874211d4
commit
df83c17e5a
12
xpath.c
12
xpath.c
@ -11763,11 +11763,15 @@ xmlXPathCompOpEvalPositionalPredicate(xmlXPathParserContextPtr ctxt,
|
||||
|
||||
if ((ctxt->error != XPATH_EXPRESSION_OK) || (res == -1)) {
|
||||
xmlXPathObjectPtr tmp;
|
||||
/* pop the result */
|
||||
/* pop the result if any */
|
||||
tmp = valuePop(ctxt);
|
||||
xmlXPathReleaseObject(xpctxt, tmp);
|
||||
/* then pop off contextObj, which will be freed later */
|
||||
valuePop(ctxt);
|
||||
if (tmp != contextObj)
|
||||
/*
|
||||
* Free up the result
|
||||
* then pop off contextObj, which will be freed later
|
||||
*/
|
||||
xmlXPathReleaseObject(xpctxt, tmp);
|
||||
valuePop(ctxt);
|
||||
goto evaluation_error;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user