[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1468017794-4818-5-git-send-email-mmayer@broadcom.com>
Date: Fri, 8 Jul 2016 15:43:11 -0700
From: Markus Mayer <mmayer@...adcom.com>
To: William Hubbs <w.d.hubbs@...il.com>,
Chris Brannon <chris@...-brannons.com>,
Kirk Reiser <kirk@...sers.ca>,
Samuel Thibault <samuel.thibault@...-lyon.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Markus Mayer <mmayer@...adcom.com>, speakup@...ux-speakup.org,
devel@...verdev.osuosl.org, linux-kernel@...r.kernel.org
Subject: [PATCH v3 4/7] staging: speakup: replace spk_strlwr() with strlcpytolower()
After introducing generic strltolower() and strtolower(), spk_strlwr()
is no longer needed.
Signed-off-by: Markus Mayer <mmayer@...adcom.com>
---
Samuel, I left off your ACK, since the implementation of my function
changed in v2 and again in v3. This patch has been updated to match the
new strlcpy() semantics. Here, this means we want the length argument
to be sizeof(new_synth_name).
See https://patchwork.kernel.org/patch/9215217/ for the previous version.
drivers/staging/speakup/kobjects.c | 3 +--
drivers/staging/speakup/main.c | 3 ++-
drivers/staging/speakup/speakup.h | 1 -
drivers/staging/speakup/varhandlers.c | 12 ------------
4 files changed, 3 insertions(+), 16 deletions(-)
diff --git a/drivers/staging/speakup/kobjects.c b/drivers/staging/speakup/kobjects.c
index 528cbdc..c6e0c2d 100644
--- a/drivers/staging/speakup/kobjects.c
+++ b/drivers/staging/speakup/kobjects.c
@@ -387,11 +387,10 @@ static ssize_t synth_store(struct kobject *kobj, struct kobj_attribute *attr,
len = strlen(buf);
if (len < 2 || len > 9)
return -EINVAL;
- strncpy(new_synth_name, buf, len);
+ strlcpytolower(new_synth_name, buf, sizeof(new_synth_name));
if (new_synth_name[len - 1] == '\n')
len--;
new_synth_name[len] = '\0';
- spk_strlwr(new_synth_name);
if ((synth != NULL) && (!strcmp(new_synth_name, synth->name))) {
pr_warn("%s already in use\n", new_synth_name);
} else if (synth_init(new_synth_name) != 0) {
diff --git a/drivers/staging/speakup/main.c b/drivers/staging/speakup/main.c
index 97ca4ec..970f568 100644
--- a/drivers/staging/speakup/main.c
+++ b/drivers/staging/speakup/main.c
@@ -2314,7 +2314,8 @@ static int __init speakup_init(void)
spk_initialize_msgs(); /* Initialize arrays for i18n. */
spk_reset_default_chars();
spk_reset_default_chartab();
- spk_strlwr(synth_name);
+ if (synth_name)
+ strtolower(synth_name);
spk_vars[0].u.n.high = vc->vc_cols;
for (var = spk_vars; var->var_id != MAXVARS; var++)
speakup_register_var(var);
diff --git a/drivers/staging/speakup/speakup.h b/drivers/staging/speakup/speakup.h
index df74c91..4725785 100644
--- a/drivers/staging/speakup/speakup.h
+++ b/drivers/staging/speakup/speakup.h
@@ -50,7 +50,6 @@ void synth_insert_next_index(int sent_num);
void spk_reset_index_count(int sc);
void spk_get_index_count(int *linecount, int *sentcount);
int spk_set_key_info(const u_char *key_info, u_char *k_buffer);
-char *spk_strlwr(char *s);
char *spk_s2uchar(char *start, char *dest);
int speakup_kobj_init(void);
void speakup_kobj_exit(void);
diff --git a/drivers/staging/speakup/varhandlers.c b/drivers/staging/speakup/varhandlers.c
index e1393d2..a1af222 100644
--- a/drivers/staging/speakup/varhandlers.c
+++ b/drivers/staging/speakup/varhandlers.c
@@ -309,18 +309,6 @@ int spk_set_mask_bits(const char *input, const int which, const int how)
return 0;
}
-char *spk_strlwr(char *s)
-{
- char *p;
-
- if (!s)
- return NULL;
-
- for (p = s; *p; p++)
- *p = tolower(*p);
- return s;
-}
-
char *spk_s2uchar(char *start, char *dest)
{
int val;
--
2.7.4
Powered by blists - more mailing lists