Move it into an independent block and move temporary variables locally.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/conf/domain_conf.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 390263d806..0e25d585c8 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -8869,9 +8869,7 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
g_autofree char *vhostuser_mode = NULL;
g_autofree char *vhostuser_path = NULL;
g_autofree char *vhostuser_type = NULL;
- g_autofree char *vhost_path = NULL;
g_autofree char *tap = NULL;
- g_autofree char *vhost = NULL;
g_autofree char *switchid = NULL;
g_autofree char *connectionid = NULL;
const char *prefix = xmlopt ? xmlopt->config.netPrefix : NULL;
@@ -9039,9 +9037,6 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
if ((tap = virXPathString("string(./backend/@tap)", ctxt)))
def->backend.tap = virFileSanitizePath(tap);
- if ((vhost = virXPathString("string(./backend/@vhost)", ctxt)))
- vhost_path = virFileSanitizePath(vhost);
-
mac_node = virXPathNode("./mac", ctxt);
if ((macaddr = virXMLPropString(mac_node, "address"))) {
@@ -9484,7 +9479,14 @@ virDomainNetDefParseXML(virDomainXMLOption *xmlopt,
&def->driver.virtio.guest.ufo) < 0)
return NULL;
}
- def->backend.vhost = g_steal_pointer(&vhost_path);
+ }
+
+ if (def->type != VIR_DOMAIN_NET_TYPE_HOSTDEV &&
+ virDomainNetIsVirtioModel(def)) {
+ g_autofree char *vhost = virXPathString("string(./backend/@vhost)",
ctxt);
+
+ if (vhost)
+ def->backend.vhost = virFileSanitizePath(vhost);
}
def->linkstate = VIR_DOMAIN_NET_INTERFACE_LINK_STATE_DEFAULT;
--
2.37.1