staging: speakup: Replace strncpy with memcpy
commit fd29edc7232bc19f969e8f463138afc5472b3d5f upstream. gcc 8.1.0 generates the following warnings. drivers/staging/speakup/kobjects.c: In function 'punc_store': drivers/staging/speakup/kobjects.c:522:2: warning: 'strncpy' output truncated before terminating nul copying as many bytes from a string as its length drivers/staging/speakup/kobjects.c:504:6: note: length computed here drivers/staging/speakup/kobjects.c: In function 'synth_store': drivers/staging/speakup/kobjects.c:391:2: warning: 'strncpy' output truncated before terminating nul copying as many bytes from a string as its length drivers/staging/speakup/kobjects.c:388:8: note: length computed here Using strncpy() is indeed less than perfect since the length of data to be copied has already been determined with strlen(). Replace strncpy() with memcpy() to address the warning and optimize the code a little. Signed-off-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
5d2cc520d1
commit
16906e5ad4
@ -387,7 +387,7 @@ 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);
|
||||
memcpy(new_synth_name, buf, len);
|
||||
if (new_synth_name[len - 1] == '\n')
|
||||
len--;
|
||||
new_synth_name[len] = '\0';
|
||||
@ -518,7 +518,7 @@ static ssize_t punc_store(struct kobject *kobj, struct kobj_attribute *attr,
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
strncpy(punc_buf, buf, x);
|
||||
memcpy(punc_buf, buf, x);
|
||||
|
||||
while (x && punc_buf[x - 1] == '\n')
|
||||
x--;
|
||||
|
Loading…
x
Reference in New Issue
Block a user