When removing the last child element from a network or domain metadata, free the metadata node itself as well, to prevent displaying an empty metadata element. https://issues.redhat.com/browse/RHEL-27172 Signed-off-by: Ján Tomko <jtomko@xxxxxxxxxx> --- src/conf/domain_conf.c | 3 +++ src/conf/virnetworkobj.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 6ca604a60b..50763d9514 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -30264,6 +30264,9 @@ virDomainDefSetMetadata(virDomainDef *def, return -1; } new = NULL; + } else if (!xmlFirstElementChild(def->metadata)) { + xmlFreeNode(def->metadata); + def->metadata = NULL; } break; diff --git a/src/conf/virnetworkobj.c b/src/conf/virnetworkobj.c index 7d4566bdf1..c908c61e67 100644 --- a/src/conf/virnetworkobj.c +++ b/src/conf/virnetworkobj.c @@ -2117,6 +2117,9 @@ virNetworkDefSetMetadata(virNetworkDef *def, return -1; } new = NULL; + } else if (!xmlFirstElementChild(def->metadata)) { + xmlFreeNode(def->metadata); + def->metadata = NULL; } break; -- 2.48.1