[libxml2] Fix whitespace when serializing empty HTML documents
- From: Nick Wellnhofer <nwellnhof src gnome org>
 
- To: commits-list gnome org
 
- Cc: 
 
- Subject: [libxml2] Fix whitespace when serializing empty HTML documents
 
- Date: Mon,  7 Jun 2021 13:24:49 +0000 (UTC)
 
commit 92d9ab4c28842a09ca2b76d3ff2f933e01b6cd6f
Author: Nick Wellnhofer <wellnhofer aevum de>
Date:   Mon Jun 7 15:09:53 2021 +0200
    Fix whitespace when serializing empty HTML documents
    
    The old, non-recursive HTML serialization code would always terminate
    the output with a newline. The new implementation omitted the newline
    if the document node had no children. Readd the newline when
    serializing empty documents.
    
    Fixes #266.
 HTMLtree.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)
---
diff --git a/HTMLtree.c b/HTMLtree.c
index bdd639c7..7a2b8558 100644
--- 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;
 
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]