blob: d61682c5e47cc0fdffa3484f69e75d6ecf1f0859 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
From: Robert Schwebel <r.schwebel@pengutronix.de>
Date: Sun, 29 Nov 2009 00:00:00 +0100
Subject: [PATCH] xmlstarlet: bail out if no dtd parsing support in libxml2
We use xmlParseDTD without testing if libxml2 has support
for it enabled. This can result in the following linker error:
xml_validate.o: In function `valAgainstDtd':
xmlstarlet-1.0.1/src/xml_validate.c:229:
undefined reference to `xmlParseDTD'
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
Applied-Upstream: 1.0.2, commit:5f2a71f57c1500b98ee2d1f9f6757854349e0072
---
src/xml_validate.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/xml_validate.c b/src/xml_validate.c
index 911bb16d1d5f..a7f55b8da864 100644
--- a/src/xml_validate.c
+++ b/src/xml_validate.c
@@ -226,6 +226,11 @@ valAgainstDtd(valOptionsPtr ops, char* dtdvalid, xmlDocPtr doc, char* filename)
{
xmlDtdPtr dtd;
+#if !defined(LIBXML_VALID_ENABLED)
+ xmlGenericError(xmlGenericErrorContext,
+ "libxml2 has no validation support");
+ return 2;
+#endif
dtd = xmlParseDTD(NULL, (const xmlChar *)dtdvalid);
if (dtd == NULL)
{
|