[PATCH v2 1/2] gcc8.1: fix strncpy bounds warnings
Andy Green
andy at warmcat.com
Tue Jun 26 13:36:30 CEST 2018
These warnings are coming on default Fedora 28 build and probably others using gcc 8.1
../shared.c: In function ‘expand_macro’:
../shared.c:483:3: warning: ‘strncpy’ specified bound depends on the length of the source argument [-Wstringop-overflow=]
strncpy(name, value, len);
^~~~~~~~~~~~~~~~~~~~~~~~~
../shared.c:480:9: note: length computed here
len = strlen(value);
^~~~~~~~~~~~~
strncpy with a computed length via strlen is usually
not the right thing.
Signed-off-by: Andy Green <andy at warmcat.com>
---
shared.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/shared.c b/shared.c
index d7c7636..6cda79e 100644
--- a/shared.c
+++ b/shared.c
@@ -483,7 +483,7 @@ static char *expand_macro(char *name, int maxlength)
len = strlen(value);
if (len > maxlength)
len = maxlength;
- strncpy(name, value, len);
+ memcpy(name, value, len);
}
return name + len;
}
More information about the CGit
mailing list