From 11f6cc3279313bbf48514fe12e7b424ea1d982a9 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyering@redhat.com> Date: Mon, 14 Dec 2009 21:37:54 +0100 Subject: [PATCH] xm_internal.c: remove misleading dead code * src/xen/xm_internal.c (xenXMConfigGetULong): Remove useless and misleading test (always false) for val->str == NULL before code that always dereferences val->str. "val" comes from virConfGetValue, and at that point, val->str is guaranteed to be non-NULL. (xenXMConfigGetBool): Likewise. * src/util/conf.c (virConfSetValue): Ensure that vir->str is never NULL, not even if someone tries to set such a value via virConfSetValue. --- src/util/conf.c | 3 +++ src/xen/xm_internal.c | 6 ------ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/util/conf.c b/src/util/conf.c index 0c7e556db1..60cf0b4ada 100644 --- a/src/util/conf.c +++ b/src/util/conf.c @@ -858,6 +858,9 @@ virConfSetValue (virConfPtr conf, { virConfEntryPtr cur, prev = NULL; + if (value && value->type == VIR_CONF_STRING && value->str == NULL) + return -1; + cur = conf->entries; while (cur != NULL) { if ((cur->name != NULL) && (STREQ(cur->name, setting))) { diff --git a/src/xen/xm_internal.c b/src/xen/xm_internal.c index 3dc655bdda..944d5d513f 100644 --- a/src/xen/xm_internal.c +++ b/src/xen/xm_internal.c @@ -152,9 +152,6 @@ static int xenXMConfigGetBool(virConnectPtr conn, if (val->type == VIR_CONF_LONG) { *value = val->l ? 1 : 0; } else if (val->type == VIR_CONF_STRING) { - if (!val->str) { - *value = def; - } *value = STREQ(val->str, "1") ? 1 : 0; } else { xenXMError(conn, VIR_ERR_INTERNAL_ERROR, @@ -183,9 +180,6 @@ static int xenXMConfigGetULong(virConnectPtr conn, *value = val->l; } else if (val->type == VIR_CONF_STRING) { char *ret; - if (!val->str) { - *value = def; - } *value = strtol(val->str, &ret, 10); if (ret == val->str) { xenXMError(conn, VIR_ERR_INTERNAL_ERROR,