more use const for interface of libbb/compare_string_array, example usage for e2fsprogs/fsck
diff --git a/e2fsprogs/fsck.c b/e2fsprogs/fsck.c
index b7e25d6..ae4e3d0 100644
--- a/e2fsprogs/fsck.c
+++ b/e2fsprogs/fsck.c
@@ -988,8 +988,7 @@
/* Check if we should ignore this filesystem. */
static int ignore(struct fs_info *fs)
{
- const char * const *ip;
- int wanted = 0;
+ int wanted;
char *s;
/*
@@ -1007,15 +1006,11 @@
if (!fs_match(fs, &fs_type_compiled)) return 1;
/* Are we ignoring this type? */
- for(ip = ignored_types; *ip; ip++)
- if (strcmp(fs->type, *ip) == 0) return 1;
+ if(compare_string_array(ignored_types, fs->type))
+ return 1;
/* Do we really really want to check this fs? */
- for(ip = really_wanted; *ip; ip++)
- if (strcmp(fs->type, *ip) == 0) {
- wanted = 1;
- break;
- }
+ wanted = compare_string_array(really_wanted, fs->type);
/* See if the <fsck.fs> program is available. */
s = find_fsck(fs->type);
diff --git a/include/libbb.h b/include/libbb.h
index b7dd487..70a9336 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -466,7 +466,7 @@
} procps_status_t;
extern procps_status_t * procps_scan(int save_user_arg0);
-extern unsigned short compare_string_array(const char *string_array[], const char *key);
+extern unsigned short compare_string_array(const char * const string_array[], const char *key);
extern int my_query_module(const char *name, int which, void **buf, size_t *bufsize, size_t *ret);
diff --git a/libbb/compare_string_array.c b/libbb/compare_string_array.c
index 993b462..8961e00 100644
--- a/libbb/compare_string_array.c
+++ b/libbb/compare_string_array.c
@@ -17,7 +17,8 @@
#include <string.h>
/* returns the array number of the string */
-extern unsigned short compare_string_array(const char *string_array[], const char *key)
+extern unsigned short
+compare_string_array(const char * const string_array[], const char *key)
{
unsigned short i;