convert trivial cases to FLEX_ARRAY macros
Using FLEX_ARRAY macros reduces the amount of manual computation size we have to do. It also ensures we don't overflow size_t, and it makes sure we write the same number of bytes that we allocated. 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
3733e69464
commit
96ffc06f72
7
diff.c
7
diff.c
@ -2607,12 +2607,9 @@ static void builtin_checkdiff(const char *name_a, const char *name_b,
|
||||
|
||||
struct diff_filespec *alloc_filespec(const char *path)
|
||||
{
|
||||
int namelen = strlen(path);
|
||||
struct diff_filespec *spec = xmalloc(sizeof(*spec) + namelen + 1);
|
||||
struct diff_filespec *spec;
|
||||
|
||||
memset(spec, 0, sizeof(*spec));
|
||||
spec->path = (char *)(spec + 1);
|
||||
memcpy(spec->path, path, namelen+1);
|
||||
FLEXPTR_ALLOC_STR(spec, path, path);
|
||||
spec->count = 1;
|
||||
spec->is_binary = -1;
|
||||
return spec;
|
||||
|
||||
Reference in New Issue
Block a user