diff options
| author | ProsperousPotato <ProsperousPotato@users.noreply.github.com> | 2025-07-28 17:00:36 +0100 |
|---|---|---|
| committer | ProsperousPotato <ProsperousPotato@users.noreply.github.com> | 2025-07-28 17:00:36 +0100 |
| commit | 6384c9e3fe3b5ac2ec1af25aef237bedc2d3f229 (patch) | |
| tree | 0ad8570d037681d9497ae3e9c7fdbfb039cb551a /quicksearch.c | |
| parent | f68ec7323c44aa33f12934f0914ff5f0fa8d57eb (diff) | |
replace sprintf and strcpy with snprintf and strlcpy
Diffstat (limited to 'quicksearch.c')
| -rwxr-xr-x | quicksearch.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/quicksearch.c b/quicksearch.c index 9cc517c..1f8f248 100755 --- a/quicksearch.c +++ b/quicksearch.c @@ -20,12 +20,13 @@ quicksearch(const Arg *arg) int first = 1; for (int i = 0; i < LENGTH(tags); i++) { if (c->tags & (1 << i)) { - if (!first) tag_len += sprintf(tag_str + tag_len, ","); - tag_len += sprintf(tag_str + tag_len, "%d", i + 1); + + if (!first) tag_len += snprintf(tag_str + tag_len, sizeof(tag_str) - tag_len, ","); + tag_len += snprintf(tag_str + tag_len, sizeof(tag_str) - tag_len, "%d", i + 1); first = 0; } } - tag_len += sprintf(tag_str + tag_len, "] "); + tag_len += snprintf(tag_str + tag_len, sizeof(tag_str) - tag_len, "] "); size_t name_len = strlen(c->name); size_t needed = names_len + tag_len + name_len + 1; @@ -44,9 +45,10 @@ quicksearch(const Arg *arg) die("quicksearch: realloc failed"); } - strcpy(names + names_len, tag_str); - names_len += tag_len; - strcpy(names + names_len, c->name); + strlcpy(names + names_len, tag_str, names_size - names_len); + names_len += tag_len; + strlcpy(names + names_len, c->name, names_size - names_len); + names_len += name_len; names[names_len] = '\n'; names_len++; |
