From: Pavel Hrdina Date: Mon, 14 Aug 2017 12:31:52 +0000 (+0200) Subject: conf: use virXMLPropString for IOThread parsing X-Git-Tag: v3.7.0-rc1~152 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=954b52cd8b9dae520ceca8fa6ed8a0991ab248c7;p=thirdparty%2Flibvirt.git conf: use virXMLPropString for IOThread parsing XPath is good for random search of elements, not for accessing attributes of one node. Signed-off-by: Pavel Hrdina --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index cb1b5b55fb..6e424c96d8 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -16209,19 +16209,15 @@ virDomainIdmapDefParseXML(xmlXPathContextPtr ctxt, * */ static virDomainIOThreadIDDefPtr -virDomainIOThreadIDDefParseXML(xmlNodePtr node, - xmlXPathContextPtr ctxt) +virDomainIOThreadIDDefParseXML(xmlNodePtr node) { virDomainIOThreadIDDefPtr iothrid; - xmlNodePtr oldnode = ctxt->node; char *tmp = NULL; if (VIR_ALLOC(iothrid) < 0) return NULL; - ctxt->node = node; - - if (!(tmp = virXPathString("string(./@id)", ctxt))) { + if (!(tmp = virXMLPropString(node, "id"))) { virReportError(VIR_ERR_XML_ERROR, "%s", _("Missing 'id' attribute in element")); goto error; @@ -16235,7 +16231,6 @@ virDomainIOThreadIDDefParseXML(xmlNodePtr node, cleanup: VIR_FREE(tmp); - ctxt->node = oldnode; return iothrid; error: @@ -16275,7 +16270,7 @@ virDomainDefParseIOThreads(virDomainDefPtr def, for (i = 0; i < n; i++) { virDomainIOThreadIDDefPtr iothrid = NULL; - if (!(iothrid = virDomainIOThreadIDDefParseXML(nodes[i], ctxt))) + if (!(iothrid = virDomainIOThreadIDDefParseXML(nodes[i]))) goto error; if (virDomainIOThreadIDFind(def, iothrid->iothread_id)) {