libmultipath: fix flush_on_last_del config handlers
authorGuangyu Sun <guangyu.sun@oracle.com>
Sat, 22 Dec 2012 08:40:59 +0000 (09:40 +0100)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Sat, 22 Dec 2012 08:40:59 +0000 (09:40 +0100)
Now flush_on_last_del cannot be set to FLUSH_DISABLED if its default
value is FLUSH_ENABLED. This patch fixes the issue.

libmultipath/dict.c

index e0535a6..ebc49a3 100644 (file)
@@ -508,7 +508,7 @@ def_flush_on_last_del_handler(vector strvec)
        if ((strlen(buff) == 2 && strcmp(buff, "no") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "0") == 0))
                conf->flush_on_last_del = FLUSH_DISABLED;
-       if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
+       else if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "1") == 0))
                conf->flush_on_last_del = FLUSH_ENABLED;
        else
@@ -1214,7 +1214,7 @@ hw_flush_on_last_del_handler(vector strvec)
        if ((strlen(buff) == 2 && strcmp(buff, "no") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "0") == 0))
                hwe->flush_on_last_del = FLUSH_DISABLED;
-       if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
+       else if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "1") == 0))
                hwe->flush_on_last_del = FLUSH_ENABLED;
        else
@@ -1609,7 +1609,7 @@ mp_flush_on_last_del_handler(vector strvec)
        if ((strlen(buff) == 2 && strcmp(buff, "no") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "0") == 0))
                mpe->flush_on_last_del = FLUSH_DISABLED;
-       if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
+       else if ((strlen(buff) == 3 && strcmp(buff, "yes") == 0) ||
            (strlen(buff) == 1 && strcmp(buff, "1") == 0))
                mpe->flush_on_last_del = FLUSH_ENABLED;
        else