summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coreutils/stty.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/coreutils/stty.c b/coreutils/stty.c
index ade2468..298fb5b 100644
--- a/coreutils/stty.c
+++ b/coreutils/stty.c
@@ -780,30 +780,14 @@ static const struct suffix_mult stty_suffixes[] = {
static const struct mode_info *find_mode(const char *name)
{
- int i = 0;
- const char *m = mode_name;
-
- while (*m) {
- if (strcmp(name, m) == 0)
- return &mode_info[i];
- m += strlen(m) + 1;
- i++;
- }
- return NULL;
+ int i = index_in_strings(mode_name, name);
+ return i >= 0 ? &mode_info[i] : NULL;
}
static const struct control_info *find_control(const char *name)
{
- int i = 0;
- const char *m = mode_name;
-
- while (*m) {
- if (strcmp(name, m) == 0)
- return &control_info[i];
- m += strlen(m) + 1;
- i++;
- }
- return NULL;
+ int i = index_in_strings(control_name, name);
+ return i >= 0 ? &control_info[i] : NULL;
}
enum {