Replace strncpy call with memcpy when result is not NUL-terminated
This fixes a new warning from GCC 8.1, -Wstringop-truncation: https://gcc.gnu.org/gcc-8/changes.html https://gcc.gnu.org/onlinedocs/gcc-8.1.0/gcc/Warning-Options.html#index-Wstringop-truncation Replacing with memcpy is what gcc suggests: > As another example, the following call to strncpy results in copying > to d just the characters preceding the terminating NUL, without > appending the NUL to the end. Assuming the result of strncpy is > necessarily a NUL-terminated string is a common mistake, and so the > call is diagnosed. To avoid the warning when the result is not > expected to be NUL-terminated, call memcpy instead. > void copy (char *d, const char *s) > { > strncpy (d, s, strlen (s)); > }
This commit is contained in:
parent
1cdb1ab721
commit
f4981f97bc
|
@ -309,7 +309,7 @@ int i3_send_msg(uint32_t type, const char *payload) {
|
|||
char *buffer = smalloc(to_write);
|
||||
char *walk = buffer;
|
||||
|
||||
strncpy(buffer, I3_IPC_MAGIC, strlen(I3_IPC_MAGIC));
|
||||
memcpy(buffer, I3_IPC_MAGIC, strlen(I3_IPC_MAGIC));
|
||||
walk += strlen(I3_IPC_MAGIC);
|
||||
memcpy(walk, &len, sizeof(uint32_t));
|
||||
walk += sizeof(uint32_t);
|
||||
|
|
|
@ -604,7 +604,7 @@ void handle_button(xcb_button_press_event_t *event) {
|
|||
|
||||
const size_t len = namelen + strlen("workspace \"\"") + 1;
|
||||
char *buffer = scalloc(len + num_quotes, 1);
|
||||
strncpy(buffer, "workspace \"", strlen("workspace \""));
|
||||
memcpy(buffer, "workspace \"", strlen("workspace \""));
|
||||
size_t inpos, outpos;
|
||||
for (inpos = 0, outpos = strlen("workspace \"");
|
||||
inpos < namelen;
|
||||
|
|
Loading…
Reference in New Issue