1 |
tetromino 12/11/27 05:43:54 |
2 |
|
3 |
Added: libxml2-2.9.0-rand_seed.patch |
4 |
libxml2-2.9.0-streaming-validation.patch |
5 |
libxml2-2.9.0-large-file-parse.patch |
6 |
libxml2-2.9.0-nsclean.patch |
7 |
libxml2-2.9.0-thread-alloc.patch |
8 |
libxml2-2.9.0-disable_static_modules.patch |
9 |
libxml2-2.9.0-thread-portability.patch |
10 |
Log: |
11 |
Version bump featuring improved push parser and XPath evaluation (bug #444290). Update to EAPI5, always install docs in a devhelp-compatible location following current gnome team style guidelines, and run a more complete test suite. |
12 |
|
13 |
(Portage version: 2.2.0_alpha142/cvs/Linux x86_64, signed Manifest commit with key CF0ADD61) |
14 |
|
15 |
Revision Changes Path |
16 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch |
17 |
|
18 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch?rev=1.1&view=markup |
19 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-rand_seed.patch?rev=1.1&content-type=text/plain |
20 |
|
21 |
Index: libxml2-2.9.0-rand_seed.patch |
22 |
=================================================================== |
23 |
From e7715a5963afebfb027120db6914926ec9a7373d Mon Sep 17 00:00:00 2001 |
24 |
From: Wouter Van Rooy <rooywo@×××××.com> |
25 |
Date: Fri, 14 Sep 2012 14:39:42 +0800 |
26 |
Subject: [PATCH] rand_seed should be static in dict.c |
27 |
|
28 |
For https://bugzilla.gnome.org/show_bug.cgi?id=683933 |
29 |
rand_seed should be a static variable in dict.c |
30 |
|
31 |
We ran into a problem with another library that exports rand_seed as a |
32 |
function. Combined with 2.7.8 this was not a problem but later versions |
33 |
have this problem. |
34 |
--- |
35 |
dict.c | 2 +- |
36 |
1 file changed, 1 insertion(+), 1 deletion(-) |
37 |
|
38 |
diff --git a/dict.c b/dict.c |
39 |
index 9935a25..164c7f2 100644 |
40 |
--- a/dict.c |
41 |
+++ b/dict.c |
42 |
@@ -143,7 +143,7 @@ static int xmlDictInitialized = 0; |
43 |
/* |
44 |
* Internal data for random function, protected by xmlDictMutex |
45 |
*/ |
46 |
-unsigned int rand_seed = 0; |
47 |
+static unsigned int rand_seed = 0; |
48 |
#endif |
49 |
#endif |
50 |
|
51 |
-- |
52 |
1.8.0 |
53 |
|
54 |
|
55 |
|
56 |
|
57 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch |
58 |
|
59 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch?rev=1.1&view=markup |
60 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-streaming-validation.patch?rev=1.1&content-type=text/plain |
61 |
|
62 |
Index: libxml2-2.9.0-streaming-validation.patch |
63 |
=================================================================== |
64 |
From 6c91aa384f48ff6d406553a6dd47fd556c1ef2e6 Mon Sep 17 00:00:00 2001 |
65 |
From: Daniel Veillard <veillard@××××××.com> |
66 |
Date: Thu, 25 Oct 2012 15:33:59 +0800 |
67 |
Subject: [PATCH] Fix a regression in 2.9.0 breaking validation while |
68 |
streaming |
69 |
|
70 |
https://bugzilla.gnome.org/show_bug.cgi?id=684774 |
71 |
with help from Kjell Ahlstedt <kjell.ahlstedt@××××××××.net> |
72 |
--- |
73 |
SAX2.c | 2 +- |
74 |
parser.c | 7 +++++-- |
75 |
2 files changed, 6 insertions(+), 3 deletions(-) |
76 |
|
77 |
diff --git a/SAX2.c b/SAX2.c |
78 |
index a24abc8..3eea39a 100644 |
79 |
--- a/SAX2.c |
80 |
+++ b/SAX2.c |
81 |
@@ -2202,7 +2202,7 @@ xmlSAX2StartElementNs(void *ctx, |
82 |
(ctxt->myDoc->intSubset->elements == NULL) && |
83 |
(ctxt->myDoc->intSubset->attributes == NULL) && |
84 |
(ctxt->myDoc->intSubset->entities == NULL)))) { |
85 |
- xmlErrValid(ctxt, XML_ERR_NO_DTD, |
86 |
+ xmlErrValid(ctxt, XML_DTD_NO_DTD, |
87 |
"Validation failed: no DTD found !", NULL, NULL); |
88 |
ctxt->validate = 0; |
89 |
} |
90 |
diff --git a/parser.c b/parser.c |
91 |
index 28b0d80..19f1217 100644 |
92 |
--- a/parser.c |
93 |
+++ b/parser.c |
94 |
@@ -11633,7 +11633,7 @@ xmlParseTryOrFinish(xmlParserCtxtPtr ctxt, int terminate) { |
95 |
"PP: Parsing internal subset\n"); |
96 |
#endif |
97 |
ctxt->inSubset = 1; |
98 |
- ctxt->progressive = 1; |
99 |
+ ctxt->progressive = 0; |
100 |
ctxt->checkIndex = 0; |
101 |
xmlParseDocTypeDecl(ctxt); |
102 |
if (RAW == '[') { |
103 |
@@ -12219,7 +12219,10 @@ xmldecl_done: |
104 |
} |
105 |
ctxt->instate = XML_PARSER_EOF; |
106 |
} |
107 |
- return((xmlParserErrors) ctxt->errNo); |
108 |
+ if (ctxt->wellFormed == 0) |
109 |
+ return((xmlParserErrors) ctxt->errNo); |
110 |
+ else |
111 |
+ return(0); |
112 |
} |
113 |
|
114 |
/************************************************************************ |
115 |
-- |
116 |
1.8.0 |
117 |
|
118 |
|
119 |
|
120 |
|
121 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch |
122 |
|
123 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch?rev=1.1&view=markup |
124 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-large-file-parse.patch?rev=1.1&content-type=text/plain |
125 |
|
126 |
Index: libxml2-2.9.0-large-file-parse.patch |
127 |
=================================================================== |
128 |
From 153cf15905cf4ec080612ada6703757d10caba1e Mon Sep 17 00:00:00 2001 |
129 |
From: Daniel Veillard <veillard@××××××.com> |
130 |
Date: Fri, 26 Oct 2012 13:50:47 +0800 |
131 |
Subject: [PATCH] Fix large parse of file from memory |
132 |
|
133 |
https://bugzilla.redhat.com/show_bug.cgi?id=862969 |
134 |
The new code trying to detect excessive input lookup would |
135 |
just get wrong sometimes in the case of very large file parsed |
136 |
directly from memory. |
137 |
--- |
138 |
libxml.h | 2 ++ |
139 |
parser.c | 1 + |
140 |
xmlIO.c | 2 +- |
141 |
3 files changed, 4 insertions(+), 1 deletion(-) |
142 |
|
143 |
diff --git a/libxml.h b/libxml.h |
144 |
index efe285b..7558b5f 100644 |
145 |
--- a/libxml.h |
146 |
+++ b/libxml.h |
147 |
@@ -91,6 +91,8 @@ void __xmlGlobalInitMutexDestroy(void); |
148 |
int __xmlRandom(void); |
149 |
#endif |
150 |
|
151 |
+int xmlNop(void); |
152 |
+ |
153 |
#ifdef IN_LIBXML |
154 |
#ifdef __GNUC__ |
155 |
#ifdef PIC |
156 |
diff --git a/parser.c b/parser.c |
157 |
index 43f53d9..0d8d7f2 100644 |
158 |
--- a/parser.c |
159 |
+++ b/parser.c |
160 |
@@ -2025,6 +2025,7 @@ static void xmlSHRINK (xmlParserCtxtPtr ctxt) { |
161 |
static void xmlGROW (xmlParserCtxtPtr ctxt) { |
162 |
if ((((ctxt->input->end - ctxt->input->cur) > XML_MAX_LOOKUP_LIMIT) || |
163 |
((ctxt->input->cur - ctxt->input->base) > XML_MAX_LOOKUP_LIMIT)) && |
164 |
+ ((ctxt->input->buf) && (ctxt->input->buf->readcallback != xmlNop)) && |
165 |
((ctxt->options & XML_PARSE_HUGE) == 0)) { |
166 |
xmlFatalErr(ctxt, XML_ERR_INTERNAL_ERROR, "Huge input lookup"); |
167 |
ctxt->instate = XML_PARSER_EOF; |
168 |
diff --git a/xmlIO.c b/xmlIO.c |
169 |
index f8f438b..44254e4 100644 |
170 |
--- a/xmlIO.c |
171 |
+++ b/xmlIO.c |
172 |
@@ -800,7 +800,7 @@ xmlCheckFilename (const char *path) |
173 |
return 1; |
174 |
} |
175 |
|
176 |
-static int |
177 |
+int |
178 |
xmlNop(void) { |
179 |
return(0); |
180 |
} |
181 |
-- |
182 |
1.8.0 |
183 |
|
184 |
|
185 |
|
186 |
|
187 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch |
188 |
|
189 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch?rev=1.1&view=markup |
190 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-nsclean.patch?rev=1.1&content-type=text/plain |
191 |
|
192 |
Index: libxml2-2.9.0-nsclean.patch |
193 |
=================================================================== |
194 |
From 711b15d545713b3a34a51ce8163d1162533647c9 Mon Sep 17 00:00:00 2001 |
195 |
From: Daniel Veillard <veillard@××××××.com> |
196 |
Date: Thu, 25 Oct 2012 19:23:26 +0800 |
197 |
Subject: [PATCH] Fix a bug in the nsclean option of the parser |
198 |
|
199 |
Raised as a side effect of: |
200 |
https://bugzilla.gnome.org/show_bug.cgi?id=663844 |
201 |
--- |
202 |
parser.c | 2 +- |
203 |
1 file changed, 1 insertion(+), 1 deletion(-) |
204 |
|
205 |
diff --git a/parser.c b/parser.c |
206 |
index 19f1217..43f53d9 100644 |
207 |
--- a/parser.c |
208 |
+++ b/parser.c |
209 |
@@ -1540,7 +1540,7 @@ nsPush(xmlParserCtxtPtr ctxt, const xmlChar *prefix, const xmlChar *URL) |
210 |
{ |
211 |
if (ctxt->options & XML_PARSE_NSCLEAN) { |
212 |
int i; |
213 |
- for (i = 0;i < ctxt->nsNr;i += 2) { |
214 |
+ for (i = ctxt->nsNr - 2;i >= 0;i -= 2) { |
215 |
if (ctxt->nsTab[i] == prefix) { |
216 |
/* in scope */ |
217 |
if (ctxt->nsTab[i + 1] == URL) |
218 |
-- |
219 |
1.8.0 |
220 |
|
221 |
|
222 |
|
223 |
|
224 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch |
225 |
|
226 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch?rev=1.1&view=markup |
227 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-thread-alloc.patch?rev=1.1&content-type=text/plain |
228 |
|
229 |
Index: libxml2-2.9.0-thread-alloc.patch |
230 |
=================================================================== |
231 |
From 0ad948ede2b5060a144c72e4e27c38d24a272ef4 Mon Sep 17 00:00:00 2001 |
232 |
From: Tim Starling <tstarling@×××××××××.org> |
233 |
Date: Mon, 29 Oct 2012 13:41:55 +1100 |
234 |
Subject: [PATCH] Define LIBXML_THREAD_ALLOC_ENABLED via xmlversion.h |
235 |
|
236 |
Otherwise, direct calls to xmlFree() etc. from the application will |
237 |
use a different set of allocation functions to what was used to allocate |
238 |
the memory internally. |
239 |
--- |
240 |
configure.in | 4 +++- |
241 |
include/libxml/xmlversion.h.in | 9 +++++++++ |
242 |
2 files changed, 12 insertions(+), 1 deletion(-) |
243 |
|
244 |
diff --git a/configure.in b/configure.in |
245 |
index 6da057c..245c033 100644 |
246 |
--- a/configure.in |
247 |
+++ b/configure.in |
248 |
@@ -954,6 +954,7 @@ WITH_THREADS=0 |
249 |
THREAD_CFLAGS="" |
250 |
TEST_THREADS="" |
251 |
THREADS_W32="" |
252 |
+WITH_THREAD_ALLOC=0 |
253 |
|
254 |
if test "$with_threads" = "no" ; then |
255 |
echo Disabling multithreaded support |
256 |
@@ -1017,7 +1018,7 @@ else |
257 |
fi |
258 |
fi |
259 |
if test "$with_thread_alloc" = "yes" -a "$WITH_THREADS" = "1" ; then |
260 |
- THREAD_CFLAGS="$THREAD_CFLAGS -DLIBXML_THREAD_ALLOC_ENABLED" |
261 |
+ WITH_THREAD_ALLOC=1 |
262 |
fi |
263 |
|
264 |
AC_SUBST(THREAD_LIBS) |
265 |
@@ -1025,6 +1026,7 @@ AC_SUBST(BASE_THREAD_LIBS) |
266 |
AC_SUBST(WITH_THREADS) |
267 |
AC_SUBST(THREAD_CFLAGS) |
268 |
AC_SUBST(TEST_THREADS) |
269 |
+AC_SUBST(WITH_THREAD_ALLOC) |
270 |
AM_CONDITIONAL([THREADS_W32],[test -n "$THREADS_W32"]) |
271 |
|
272 |
dnl |
273 |
diff --git a/include/libxml/xmlversion.h.in b/include/libxml/xmlversion.h.in |
274 |
index c98e7ca..00a836f 100644 |
275 |
--- a/include/libxml/xmlversion.h.in |
276 |
+++ b/include/libxml/xmlversion.h.in |
277 |
@@ -98,6 +98,15 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version); |
278 |
#endif |
279 |
|
280 |
/** |
281 |
+ * LIBXML_THREAD_ALLOC_ENABLED: |
282 |
+ * |
283 |
+ * Whether the allocation hooks are per-thread |
284 |
+ */ |
285 |
+#if @WITH_THREAD_ALLOC@ |
286 |
+#define LIBXML_THREAD_ALLOC_ENABLED |
287 |
+#endif |
288 |
+ |
289 |
+/** |
290 |
* LIBXML_TREE_ENABLED: |
291 |
* |
292 |
* Whether the DOM like tree manipulation API support is configured in |
293 |
-- |
294 |
1.8.0 |
295 |
|
296 |
|
297 |
|
298 |
|
299 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch |
300 |
|
301 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch?rev=1.1&view=markup |
302 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-disable_static_modules.patch?rev=1.1&content-type=text/plain |
303 |
|
304 |
Index: libxml2-2.9.0-disable_static_modules.patch |
305 |
=================================================================== |
306 |
diff --git a/python/Makefile.am b/python/Makefile.am |
307 |
index 4a8b5d5..b976893 100644 |
308 |
--- a/python/Makefile.am |
309 |
+++ b/python/Makefile.am |
310 |
@@ -19,13 +19,14 @@ if WITH_PYTHON |
311 |
AM_CPPFLAGS = \ |
312 |
-I$(top_builddir)/include \ |
313 |
-I$(top_srcdir)/include \ |
314 |
- -I$(PYTHON_INCLUDES) |
315 |
+ -I$(PYTHON_INCLUDES) \ |
316 |
+ -shared |
317 |
|
318 |
python_LTLIBRARIES = libxml2mod.la |
319 |
|
320 |
libxml2mod_la_SOURCES = libxml.c libxml_wrap.h libxml2-py.h libxml2-py.c types.c |
321 |
libxml2mod_la_LIBADD = $(top_builddir)/libxml2.la $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS) -lpython$(PYTHON_VERSION) |
322 |
-libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version |
323 |
+libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version -shared |
324 |
|
325 |
BUILT_SOURCES = libxml2-export.c libxml2-py.h libxml2-py.c |
326 |
|
327 |
|
328 |
|
329 |
|
330 |
1.1 dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch |
331 |
|
332 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch?rev=1.1&view=markup |
333 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libxml2/files/libxml2-2.9.0-thread-portability.patch?rev=1.1&content-type=text/plain |
334 |
|
335 |
Index: libxml2-2.9.0-thread-portability.patch |
336 |
=================================================================== |
337 |
From 3f6cfbd1d38d0634a2ddcb9a0a13e1b5a2195a5e Mon Sep 17 00:00:00 2001 |
338 |
From: Friedrich Haubensak <hsk@×××××××××××.de> |
339 |
Date: Wed, 12 Sep 2012 17:34:53 +0200 |
340 |
Subject: [PATCH] Fix a thread portability problem |
341 |
|
342 |
cannot compile libxml2-2.9.0 using studio 12.1 compiler on solaris 10 |
343 |
|
344 |
I.M.O. structure initializer (as PTHREAD_ONCE_INIT) cannot be used in |
345 |
a structure assignment anyway |
346 |
--- |
347 |
threads.c | 3 ++- |
348 |
1 file changed, 2 insertions(+), 1 deletion(-) |
349 |
|
350 |
diff --git a/threads.c b/threads.c |
351 |
index f206149..7e85a26 100644 |
352 |
--- a/threads.c |
353 |
+++ b/threads.c |
354 |
@@ -146,6 +146,7 @@ struct _xmlRMutex { |
355 |
static pthread_key_t globalkey; |
356 |
static pthread_t mainthread; |
357 |
static pthread_once_t once_control = PTHREAD_ONCE_INIT; |
358 |
+static pthread_once_t once_control_init = PTHREAD_ONCE_INIT; |
359 |
static pthread_mutex_t global_init_lock = PTHREAD_MUTEX_INITIALIZER; |
360 |
#elif defined HAVE_WIN32_THREADS |
361 |
#if defined(HAVE_COMPILER_TLS) |
362 |
@@ -915,7 +916,7 @@ xmlCleanupThreads(void) |
363 |
#ifdef HAVE_PTHREAD_H |
364 |
if ((libxml_is_threaded) && (pthread_key_delete != NULL)) |
365 |
pthread_key_delete(globalkey); |
366 |
- once_control = PTHREAD_ONCE_INIT; |
367 |
+ once_control = once_control_init; |
368 |
#elif defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && (!defined(LIBXML_STATIC) || defined(LIBXML_STATIC_FOR_DLL)) |
369 |
if (globalkey != TLS_OUT_OF_INDEXES) { |
370 |
xmlGlobalStateCleanupHelperParams *p; |
371 |
-- |
372 |
1.8.0 |