From abe5ffbbfec5fc7f1cb2e1ebe93a7c17df4b176c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 19 Jul 2021 14:11:12 +0200 Subject: gnu: libxml2: Update to 2.9.12. * gnu/packages/patches/libxml2-parent-pointers.patch, gnu/packages/patches/libxml2-terminating-newline.patch, gnu/packages/patches/libxml2-xpath-recursion-limit.patch: New files. * gnu/packages/patches/python-libxml2-python39-compat.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/xml.scm (libxml2): Update to 2.9.12. (python-lxml)[source](modules, snippet): New fields. --- .../patches/libxml2-terminating-newline.patch | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 gnu/packages/patches/libxml2-terminating-newline.patch (limited to 'gnu/packages/patches/libxml2-terminating-newline.patch') diff --git a/gnu/packages/patches/libxml2-terminating-newline.patch b/gnu/packages/patches/libxml2-terminating-newline.patch new file mode 100644 index 0000000000..3f5c88dd4e --- /dev/null +++ b/gnu/packages/patches/libxml2-terminating-newline.patch @@ -0,0 +1,33 @@ +Fix a regression in 2.9.12 where serializing empty HTML documents would +not add a terminating newline. + + https://gitlab.gnome.org/GNOME/libxml2/-/issues/266 + +Taken from upstream: + + https://gitlab.gnome.org/GNOME/libxml2/-/commit/92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f + +diff --git a/HTMLtree.c b/HTMLtree.c +--- a/HTMLtree.c ++++ b/HTMLtree.c +@@ -763,11 +763,15 @@ htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf, xmlDocPtr doc, + if (((xmlDocPtr) cur)->intSubset != NULL) { + htmlDtdDumpOutput(buf, (xmlDocPtr) cur, NULL); + } +- /* Always validate cur->parent when descending. */ +- if ((cur->parent == parent) && (cur->children != NULL)) { +- parent = cur; +- cur = cur->children; +- continue; ++ if (cur->children != NULL) { ++ /* Always validate cur->parent when descending. */ ++ if (cur->parent == parent) { ++ parent = cur; ++ cur = cur->children; ++ continue; ++ } ++ } else { ++ xmlOutputBufferWriteString(buf, "\n"); + } + break; + -- cgit v1.2.3