kconfig: replace a `switch()' statement by a more flexible `if()' statement
Arnaud Lacombe [Tue, 24 Aug 2010 04:14:47 +0000 (00:14 -0400)]
With the upcoming dynamical configuration prefix, we can no longer assume that
the prefix will start by a 'C'. As such, we can no longer hardcode this value in
the `case ...:', so replace the `switch() { ... }' statement by a more flexible
'if () { ... }' statement.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Reviewed-by: Michal Marek <mmarek@suse.cz>

scripts/kconfig/confdata.c

index dc11d51..d9181de 100644 (file)
@@ -221,8 +221,7 @@ load:
        while (fgets(line, sizeof(line), in)) {
                conf_lineno++;
                sym = NULL;
-               switch (line[0]) {
-               case '#':
+               if (line[0] == '#') {
                        if (memcmp(line + 2, "CONFIG_", 7))
                                continue;
                        p = strchr(line + 9, ' ');
@@ -254,12 +253,7 @@ load:
                        default:
                                ;
                        }
-                       break;
-               case 'C':
-                       if (memcmp(line, "CONFIG_", 7)) {
-                               conf_warning("unexpected data");
-                               continue;
-                       }
+               } else if (memcmp(line, "CONFIG_", 7) == 0) {
                        p = strchr(line + 7, '=');
                        if (!p)
                                continue;
@@ -286,12 +280,9 @@ load:
                        }
                        if (conf_set_sym_val(sym, def, def_flags, p))
                                continue;
-                       break;
-               case '\r':
-               case '\n':
-                       break;
-               default:
-                       conf_warning("unexpected data");
+               } else {
+                       if (line[0] != '\r' && line[0] != '\n')
+                               conf_warning("unexpected data");
                        continue;
                }
                if (sym && sym_is_choice_value(sym)) {