From 70b3b18877a66cddb26ca51dbae977e677696811 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milan=20P=2E=20Stani=C4=87?= Date: Mon, 25 Feb 2019 13:53:45 +0100 Subject: main/libxml2: fix null pointer dereference ref #10034 bump pkgrel --- main/libxml2/fix-null-pointer-dereference.patch | 36 +++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 main/libxml2/fix-null-pointer-dereference.patch (limited to 'main/libxml2/fix-null-pointer-dereference.patch') diff --git a/main/libxml2/fix-null-pointer-dereference.patch b/main/libxml2/fix-null-pointer-dereference.patch new file mode 100644 index 0000000000..64e7c58f17 --- /dev/null +++ b/main/libxml2/fix-null-pointer-dereference.patch @@ -0,0 +1,36 @@ +From 2c8dc7158a3b7b028454abcb6f162c4da28ed80b Mon Sep 17 00:00:00 2001 +From: Nick Wellnhofer +Date: Mon, 25 Feb 2019 12:00:50 +0100 +Subject: [PATCH] Fix null pointer dereference in xmlTextReaderReadOuterXml + +Fix a regression caused by commit 39fbfb4f. If xmlTextReaderReadOuterXml +is called on a pristine xmlReader, the current node is NULL and must not +be dereferenced. Move the call to xmlTextReaderExpand to the start of +the function to make sure that we have a valid node. + +Fixes #43. +--- + xmlreader.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/xmlreader.c b/xmlreader.c +index cd1fb5fe..b8e98287 100644 +--- a/xmlreader.c ++++ b/xmlreader.c +@@ -1759,11 +1759,11 @@ xmlTextReaderReadOuterXml(xmlTextReaderPtr reader ATTRIBUTE_UNUSED) + xmlBufferPtr buff; + xmlDocPtr doc; + +- node = reader->node; +- doc = node->doc; + if (xmlTextReaderExpand(reader) == NULL) { + return NULL; + } ++ node = reader->node; ++ doc = node->doc; + /* XXX: Why is the node copied? */ + if (node->type == XML_DTD_NODE) { + node = (xmlNodePtr) xmlCopyDtd((xmlDtdPtr) node); +-- +2.18.1 + -- cgit v1.2.3