mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-11 07:17:44 +00:00
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 <phrdina@redhat.com>
This commit is contained in:
parent
db755227ae
commit
954b52cd8b
@ -16209,19 +16209,15 @@ virDomainIdmapDefParseXML(xmlXPathContextPtr ctxt,
|
|||||||
* </iothreadids>
|
* </iothreadids>
|
||||||
*/
|
*/
|
||||||
static virDomainIOThreadIDDefPtr
|
static virDomainIOThreadIDDefPtr
|
||||||
virDomainIOThreadIDDefParseXML(xmlNodePtr node,
|
virDomainIOThreadIDDefParseXML(xmlNodePtr node)
|
||||||
xmlXPathContextPtr ctxt)
|
|
||||||
{
|
{
|
||||||
virDomainIOThreadIDDefPtr iothrid;
|
virDomainIOThreadIDDefPtr iothrid;
|
||||||
xmlNodePtr oldnode = ctxt->node;
|
|
||||||
char *tmp = NULL;
|
char *tmp = NULL;
|
||||||
|
|
||||||
if (VIR_ALLOC(iothrid) < 0)
|
if (VIR_ALLOC(iothrid) < 0)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
ctxt->node = node;
|
if (!(tmp = virXMLPropString(node, "id"))) {
|
||||||
|
|
||||||
if (!(tmp = virXPathString("string(./@id)", ctxt))) {
|
|
||||||
virReportError(VIR_ERR_XML_ERROR, "%s",
|
virReportError(VIR_ERR_XML_ERROR, "%s",
|
||||||
_("Missing 'id' attribute in <iothread> element"));
|
_("Missing 'id' attribute in <iothread> element"));
|
||||||
goto error;
|
goto error;
|
||||||
@ -16235,7 +16231,6 @@ virDomainIOThreadIDDefParseXML(xmlNodePtr node,
|
|||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
VIR_FREE(tmp);
|
VIR_FREE(tmp);
|
||||||
ctxt->node = oldnode;
|
|
||||||
return iothrid;
|
return iothrid;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
@ -16275,7 +16270,7 @@ virDomainDefParseIOThreads(virDomainDefPtr def,
|
|||||||
|
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
virDomainIOThreadIDDefPtr iothrid = NULL;
|
virDomainIOThreadIDDefPtr iothrid = NULL;
|
||||||
if (!(iothrid = virDomainIOThreadIDDefParseXML(nodes[i], ctxt)))
|
if (!(iothrid = virDomainIOThreadIDDefParseXML(nodes[i])))
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
if (virDomainIOThreadIDFind(def, iothrid->iothread_id)) {
|
if (virDomainIOThreadIDFind(def, iothrid->iothread_id)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user