diff options
Diffstat (limited to 'coreutils/stty.c')
-rw-r--r-- | coreutils/stty.c | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/coreutils/stty.c b/coreutils/stty.c index ade2468a8..298fb5b70 100644 --- a/coreutils/stty.c +++ b/coreutils/stty.c | |||
@@ -780,30 +780,14 @@ static const struct suffix_mult stty_suffixes[] = { | |||
780 | 780 | ||
781 | static const struct mode_info *find_mode(const char *name) | 781 | static const struct mode_info *find_mode(const char *name) |
782 | { | 782 | { |
783 | int i = 0; | 783 | int i = index_in_strings(mode_name, name); |
784 | const char *m = mode_name; | 784 | return i >= 0 ? &mode_info[i] : NULL; |
785 | |||
786 | while (*m) { | ||
787 | if (strcmp(name, m) == 0) | ||
788 | return &mode_info[i]; | ||
789 | m += strlen(m) + 1; | ||
790 | i++; | ||
791 | } | ||
792 | return NULL; | ||
793 | } | 785 | } |
794 | 786 | ||
795 | static const struct control_info *find_control(const char *name) | 787 | static const struct control_info *find_control(const char *name) |
796 | { | 788 | { |
797 | int i = 0; | 789 | int i = index_in_strings(control_name, name); |
798 | const char *m = mode_name; | 790 | return i >= 0 ? &control_info[i] : NULL; |
799 | |||
800 | while (*m) { | ||
801 | if (strcmp(name, m) == 0) | ||
802 | return &control_info[i]; | ||
803 | m += strlen(m) + 1; | ||
804 | i++; | ||
805 | } | ||
806 | return NULL; | ||
807 | } | 791 | } |
808 | 792 | ||
809 | enum { | 793 | enum { |