replace trivial malloc + sprintf / strcpy calls with xstrfmt
It's a common pattern to do: foo = xmalloc(strlen(one) + strlen(two) + 1 + 1); sprintf(foo, "%s %s", one, two); (or possibly some variant with strcpy()s or a more complicated length computation). We can switch these to use xstrfmt, which is shorter, involves less error-prone manual computation, and removes many sprintf and strcpy calls which make it harder to audit the code for real buffer overflows. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
b7115a350b
commit
75faa45ae0
@ -93,12 +93,8 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix)
|
||||
if (argv[i]) {
|
||||
int j;
|
||||
pattern = xcalloc(argc - i + 1, sizeof(const char *));
|
||||
for (j = i; j < argc; j++) {
|
||||
int len = strlen(argv[j]);
|
||||
char *p = xmalloc(len + 3);
|
||||
sprintf(p, "*/%s", argv[j]);
|
||||
pattern[j - i] = p;
|
||||
}
|
||||
for (j = i; j < argc; j++)
|
||||
pattern[j - i] = xstrfmt("*/%s", argv[j]);
|
||||
}
|
||||
remote = remote_get(dest);
|
||||
if (!remote) {
|
||||
|
Reference in New Issue
Block a user