From: Tim Wiederhake Date: Wed, 14 Jul 2021 09:08:50 +0000 (+0200) Subject: virNWFilterParseParamAttributes: Simplify loop body X-Git-Tag: v7.6.0-rc1~71 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8ca6d834adf071ed058fe24c9875299d2c6281e2;p=thirdparty%2Flibvirt.git virNWFilterParseParamAttributes: Simplify loop body Signed-off-by: Tim Wiederhake Reviewed-by: Ján Tomko --- diff --git a/src/conf/nwfilter_params.c b/src/conf/nwfilter_params.c index 0b1676e25f..63ab7e7150 100644 --- a/src/conf/nwfilter_params.c +++ b/src/conf/nwfilter_params.c @@ -707,28 +707,22 @@ virNWFilterParseParamAttributes(xmlNodePtr cur) g_autofree char *nam = virXMLPropString(cur, "name"); g_autofree char *val = virXMLPropString(cur, "value"); g_autoptr(virNWFilterVarValue) value = NULL; - if (nam != NULL && val != NULL) { - if (!isValidVarName(nam)) - goto skip_entry; - if (!isValidVarValue(val)) - goto skip_entry; - value = virHashLookup(table, nam); - if (value) { - /* add value to existing value -> list */ - if (virNWFilterVarValueAddValue(value, val) < 0) { - value = NULL; - goto err_exit; - } - val = NULL; - } else { - value = virNWFilterParseVarValue(val); - if (!value) - goto skip_entry; - if (virHashUpdateEntry(table, nam, value) < 0) - goto err_exit; - } - value = NULL; + + if (nam == NULL || !isValidVarName(nam) || + val == NULL || !isValidVarValue(val)) { + goto skip_entry; + } + + if ((value = virHashLookup(table, nam))) { + /* add value to existing value -> list */ + if (virNWFilterVarValueAddValue(g_steal_pointer(&value), val) < 0) + goto err_exit; + val = NULL; + } else if ((value = virNWFilterParseVarValue(val))) { + if (virHashUpdateEntry(table, nam, value) < 0) + goto err_exit; } + value = NULL; skip_entry: } cur = xmlNextElementSibling(cur);