author | Petr Sumbera <petr.sumbera@oracle.com> |
Thu, 05 Nov 2015 07:03:40 -0800 | |
changeset 5070 | 4a5c8cc70bd0 |
permissions | -rw-r--r-- |
5070
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
1 |
Patch origin: upstream |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
2 |
Patch status: will be part of next version |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
3 |
|
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
4 |
https://git.gnome.org/browse/libxml2/commit/?id=ef709ce2f7b792d5fb69ed142796d743fb1eb388 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
5 |
|
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
6 |
From ef709ce2f7b792d5fb69ed142796d743fb1eb388 Mon Sep 17 00:00:00 2001 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
7 |
From: Daniel Veillard <[email protected]> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
8 |
Date: Thu, 10 Sep 2015 19:41:41 +0800 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
9 |
Subject: Fix the spurious ID already defined error |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
10 |
|
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
11 |
For https://bugzilla.gnome.org/show_bug.cgi?id=737840 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
12 |
the fix for 724903 introduced a regression on external entities carrying |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
13 |
IDs, revert that patch in part and add a specific test to avoid readding it |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
14 |
--- |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
15 |
result/valid/737840.xml | 10 ++++++++++ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
16 |
result/valid/737840.xml.err | 0 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
17 |
result/valid/737840.xml.err.rdr | 0 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
18 |
test/valid/737840.xml | 10 ++++++++++ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
19 |
test/valid/dtds/737840.ent | 1 + |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
20 |
valid.c | 6 ++++-- |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
21 |
6 files changed, 25 insertions(+), 2 deletions(-) |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
22 |
create mode 100644 result/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
23 |
create mode 100644 result/valid/737840.xml.err |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
24 |
create mode 100644 result/valid/737840.xml.err.rdr |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
25 |
create mode 100644 test/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
26 |
create mode 100644 test/valid/dtds/737840.ent |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
27 |
|
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
28 |
diff --git a/result/valid/737840.xml b/result/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
29 |
new file mode 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
30 |
index 0000000..433c6d6 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
31 |
--- /dev/null |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
32 |
+++ b/result/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
33 |
@@ -0,0 +1,10 @@ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
34 |
+<?xml version="1.0"?> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
35 |
+<!DOCTYPE root [ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
36 |
+<!ELEMENT root (elem)> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
37 |
+<!ELEMENT elem (#PCDATA)> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
38 |
+<!ATTLIST elem id ID #IMPLIED> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
39 |
+<!ENTITY target SYSTEM "dtds/737840.ent"> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
40 |
+]> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
41 |
+<root> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
42 |
+ ⌖ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
43 |
+</root> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
44 |
diff --git a/result/valid/737840.xml.err b/result/valid/737840.xml.err |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
45 |
new file mode 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
46 |
index 0000000..e69de29 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
47 |
diff --git a/result/valid/737840.xml.err.rdr b/result/valid/737840.xml.err.rdr |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
48 |
new file mode 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
49 |
index 0000000..e69de29 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
50 |
diff --git a/test/valid/737840.xml b/test/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
51 |
new file mode 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
52 |
index 0000000..2d27b73 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
53 |
--- /dev/null |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
54 |
+++ b/test/valid/737840.xml |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
55 |
@@ -0,0 +1,10 @@ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
56 |
+<!DOCTYPE root [ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
57 |
+<!ELEMENT root (elem)> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
58 |
+<!ELEMENT elem (#PCDATA)> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
59 |
+<!ATTLIST elem id ID #IMPLIED> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
60 |
+<!ENTITY target SYSTEM "dtds/737840.ent"> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
61 |
+]> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
62 |
+ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
63 |
+<root> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
64 |
+ ⌖ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
65 |
+</root> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
66 |
diff --git a/test/valid/dtds/737840.ent b/test/valid/dtds/737840.ent |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
67 |
new file mode 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
68 |
index 0000000..e972132 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
69 |
--- /dev/null |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
70 |
+++ b/test/valid/dtds/737840.ent |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
71 |
@@ -0,0 +1 @@ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
72 |
+<elem id="id0"/> |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
73 |
\ No newline at end of file |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
74 |
diff --git a/valid.c b/valid.c |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
75 |
index 409aa81..45a3f70 100644 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
76 |
--- a/valid.c |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
77 |
+++ b/valid.c |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
78 |
@@ -2634,8 +2634,10 @@ xmlAddID(xmlValidCtxtPtr ctxt, xmlDocPtr doc, const xmlChar *value, |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
79 |
/* |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
80 |
* The id is already defined in this DTD. |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
81 |
*/ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
82 |
- xmlErrValidNode(ctxt, attr->parent, XML_DTD_ID_REDEFINED, |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
83 |
- "ID %s already defined\n", value, NULL, NULL); |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
84 |
+ if (ctxt != NULL) { |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
85 |
+ xmlErrValidNode(ctxt, attr->parent, XML_DTD_ID_REDEFINED, |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
86 |
+ "ID %s already defined\n", value, NULL, NULL); |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
87 |
+ } |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
88 |
#endif /* LIBXML_VALID_ENABLED */ |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
89 |
xmlFreeID(ret); |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
90 |
return(NULL); |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
91 |
-- |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
92 |
cgit v0.11.2 |
4a5c8cc70bd0
22158519 libxml2 2.9.2 breaks libxslt tests
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff
changeset
|
93 |