diff options
Diffstat (limited to 'extra/libxml2/libxml2-2.7.8-xpath-freeing.patch')
-rw-r--r-- | extra/libxml2/libxml2-2.7.8-xpath-freeing.patch | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/extra/libxml2/libxml2-2.7.8-xpath-freeing.patch b/extra/libxml2/libxml2-2.7.8-xpath-freeing.patch deleted file mode 100644 index 2844f4a74..000000000 --- a/extra/libxml2/libxml2-2.7.8-xpath-freeing.patch +++ /dev/null @@ -1,30 +0,0 @@ -commit df83c17e5a2646bd923f75e5e507bc80d73c9722 -Author: Daniel Veillard <veillard@redhat.com> -Date: Wed Nov 17 14:12:14 2010 +0100 - - Fix a potential freeing error in XPath - -diff --git a/xpath.c b/xpath.c -index 81e33f6..1447be5 100644 ---- a/xpath.c -+++ b/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; - } - |