diff options
Diffstat (limited to 'ubi-utils')
-rw-r--r-- | ubi-utils/src/pfi.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/ubi-utils/src/pfi.c b/ubi-utils/src/pfi.c index c8d5ee4..7b57559 100644 --- a/ubi-utils/src/pfi.c +++ b/ubi-utils/src/pfi.c @@ -113,7 +113,9 @@ static const int key_descriptors_max[] = { sizeof(key_desc_v1)/sizeof(struct key_descriptor), /* version 1 */ }; -static const char* modes[] = {"raw", "ubi", NULL}; /* order isn't arbitrary! */ +#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0])) + +static const char* modes[] = {"raw", "ubi"}; /* order isn't arbitrary! */ /* latest version contains all possible keys */ static const struct key_descriptor *key_desc = key_desc_v1; @@ -131,16 +133,11 @@ static const struct key_descriptor *key_desc = key_desc_v1; static int get_mode_no(const char* mode) { - const char* ptr = modes[0]; - int i = 0; - while (ptr != NULL) { - if(strcmp(ptr, mode) == 0) { - return i; - } - ptr++; - i++; - } + int i; + for (i = 0; i < (int)ARRAY_SIZE(modes); i++) + if (strcmp(mode, modes[i]) == 0) + return i; return -1; } |