summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/libxml2-node-sort-order-pt2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/libxml2-node-sort-order-pt2.patch')
-rw-r--r--gnu/packages/patches/libxml2-node-sort-order-pt2.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/patches/libxml2-node-sort-order-pt2.patch b/gnu/packages/patches/libxml2-node-sort-order-pt2.patch
new file mode 100644
index 0000000000..d0077137fb
--- /dev/null
+++ b/gnu/packages/patches/libxml2-node-sort-order-pt2.patch
@@ -0,0 +1,37 @@
+From 3eaedba1b64180668fdab7ad2eba549586017bf3 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Sat, 11 Jul 2015 14:27:34 +0200
+Subject: [PATCH] Fix previous change to node sort order
+
+Commit ba58f23 broke comparison of nodes from different documents.
+Thanks to Olli Pottonen for the report.
+---
+ xpath.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/xpath.c b/xpath.c
+index e9f5bf9..935fcff 100644
+--- a/xpath.c
++++ b/xpath.c
+@@ -361,14 +361,14 @@ turtle_comparison:
+ /*
+ * compute depth to root
+ */
+- for (depth2 = 0, cur = node2; cur != NULL; cur = cur->parent) {
+- if (cur == node1)
++ for (depth2 = 0, cur = node2; cur->parent != NULL; cur = cur->parent) {
++ if (cur->parent == node1)
+ return(1);
+ depth2++;
+ }
+ root = cur;
+- for (depth1 = 0, cur = node1; cur != NULL; cur = cur->parent) {
+- if (cur == node2)
++ for (depth1 = 0, cur = node1; cur->parent != NULL; cur = cur->parent) {
++ if (cur->parent == node2)
+ return(-1);
+ depth1++;
+ }
+--
+2.6.3
+