]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
xm_internal.c: remove misleading dead code
authorJim Meyering <meyering@redhat.com>
Mon, 14 Dec 2009 20:37:54 +0000 (21:37 +0100)
committerJim Meyering <meyering@redhat.com>
Tue, 15 Dec 2009 16:46:04 +0000 (17:46 +0100)
* 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
src/xen/xm_internal.c

index 0c7e556db105ba00edb14784c9dfd45694bc8e9a..60cf0b4ada49b06d7a68d305046f00346c38dad4 100644 (file)
@@ -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))) {
index 3dc655bdda719ff0d589d406876c15577840f600..944d5d513f28ac8f55673c6409801f6a81e1ae11 100644 (file)
@@ -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,