summaryrefslogtreecommitdiffstats
path: root/patches/xmlstarlet-1.0.1/xmlstarlet-1.0.1-test-validation.diff
blob: 1e5813f2299f836b180e03b54929bf341f9725d1 (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
34
35
Subject: xmlstarlet: bail out if no dtd parsing support in libxml2
From: Robert Schwebel <r.schwebel@pengutronix.de>

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>

---
#20091129: rsc: submitted to upstream:
#          https://sourceforge.net/tracker/?func=detail&aid=2905714&group_id=66612&atid=515108

 src/xml_validate.c |    5 +++++
 1 file changed, 5 insertions(+)

Index: xmlstarlet-1.0.1/src/xml_validate.c
===================================================================
--- xmlstarlet-1.0.1.orig/src/xml_validate.c
+++ xmlstarlet-1.0.1/src/xml_validate.c
@@ -226,6 +226,11 @@ valAgainstDtd(valOptionsPtr ops, char* d
     {
         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)
         {