From 6253863e8f06795254c2581fa36c5116a1ee6dff Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Thu, 2 Aug 2007 10:47:38 +0000 Subject: [PATCH] * src/xml.c: changes from Masayuki Sunou to improve error reporting on device XML errors. Daniel --- ChangeLog | 5 +++++ src/xml.c | 14 ++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3ea7f3119d..bde4bb874c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Aug 2 12:49:08 CEST 2007 Daniel Veillard + + * src/xml.c: changes from Masayuki Sunou to improve error reporting + on device XML errors. + Tue Jul 31 10:24:23 EST 2007 Daniel P. Berrange * src/qemu_conf.c, src/xml.c, tests/qemuxml2argvtest.c, diff --git a/src/xml.c b/src/xml.c index b997ffe674..571a2fc02f 100644 --- a/src/xml.c +++ b/src/xml.c @@ -1397,11 +1397,13 @@ virParseXMLDevice(virConnectPtr conn, char *xmldesc, int hvm, int xendConfigVers buf.size = 1000; buf.use = 0; buf.content[0] = 0; - xml = xmlReadDoc((const xmlChar *) xmldesc, "domain.xml", NULL, + xml = xmlReadDoc((const xmlChar *) xmldesc, "device.xml", NULL, XML_PARSE_NOENT | XML_PARSE_NONET | XML_PARSE_NOERROR | XML_PARSE_NOWARNING); - if (xml == NULL) + if (xml == NULL) { + virXMLError(conn, VIR_ERR_XML_ERROR, NULL, 0); goto error; + } node = xmlDocGetRootElement(xml); if (node == NULL) goto error; @@ -1454,11 +1456,13 @@ virDomainXMLDevID(virDomainPtr domain, char *xmldesc, char *class, char *ref) #endif /* WITH_XEN */ int ret = 0; - xml = xmlReadDoc((const xmlChar *) xmldesc, "domain.xml", NULL, + xml = xmlReadDoc((const xmlChar *) xmldesc, "device.xml", NULL, XML_PARSE_NOENT | XML_PARSE_NONET | XML_PARSE_NOERROR | XML_PARSE_NOWARNING); - if (xml == NULL) + if (xml == NULL) { + virXMLError(NULL, VIR_ERR_XML_ERROR, NULL, 0); goto error; + } node = xmlDocGetRootElement(xml); if (node == NULL) goto error; @@ -1499,6 +1503,8 @@ virDomainXMLDevID(virDomainPtr domain, char *xmldesc, char *class, char *ref) goto error; } + } else { + virXMLError(NULL, VIR_ERR_XML_ERROR, (const char *) node->name, 0); } error: ret = -1;