diff options
author | Drew DeVault <sir@cmpwn.com> | 2018-04-13 08:31:09 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-13 08:31:09 -0400 |
commit | 4dbf7f8b8832bb16940527c18765131f7bbf83b2 (patch) | |
tree | 262b21eac2b3c06047d697a81bd899ddcf09ed4b /examples/support | |
parent | 65903d26775789608bb336ecde03259e94b3a6d7 (diff) | |
parent | 555206cf6041c0ab8c83f3a9860cd794a7be255c (diff) |
Merge pull request #865 from martinetd/str_truncation
Fix gcc string truncation warnings
Diffstat (limited to 'examples/support')
-rw-r--r-- | examples/support/config.c | 5 | ||||
-rw-r--r-- | examples/support/ini.c | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/examples/support/config.c b/examples/support/config.c index f0efa594..319be31a 100644 --- a/examples/support/config.c +++ b/examples/support/config.c @@ -202,7 +202,10 @@ struct example_config *parse_args(int argc, char *argv[]) { char cwd[MAXPATHLEN]; if (getcwd(cwd, sizeof(cwd)) != NULL) { char buf[MAXPATHLEN]; - snprintf(buf, MAXPATHLEN, "%s/%s", cwd, "wlr-example.ini"); + if (snprintf(buf, MAXPATHLEN, "%s/%s", cwd, "wlr-example.ini") >= MAXPATHLEN) { + wlr_log(L_ERROR, "config path too long"); + exit(1); + } config->config_path = strdup(buf); } else { wlr_log(L_ERROR, "could not get cwd"); diff --git a/examples/support/ini.c b/examples/support/ini.c index 6be9c44a..6bc1eae6 100644 --- a/examples/support/ini.c +++ b/examples/support/ini.c @@ -64,7 +64,7 @@ static char* find_chars_or_comment(const char* s, const char* chars) /* Version of strncpy that ensures dest (size bytes) is null-terminated. */ static char* strncpy0(char* dest, const char* src, size_t size) { - strncpy(dest, src, size); + strncpy(dest, src, size-1); dest[size - 1] = '\0'; return dest; } |