mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-16 11:55:27 -05:00
34 lines
1.2 KiB
Diff
34 lines
1.2 KiB
Diff
|
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;
|
||
|
|