diff options
author | René Scharfe <l.s.r@web.de> | 2019-11-12 22:41:14 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-11-13 11:29:22 +0900 |
commit | 51bd6be32dfcb638727d89816a69ef13717ab17c (patch) | |
tree | f8a499f53044a3a6f73fc422f6b2cc9af1454a87 /compat | |
parent | Git 2.23 (diff) | |
download | tgif-51bd6be32dfcb638727d89816a69ef13717ab17c.tar.xz |
mingw: use COPY_ARRAY for copying array
Use the macro COPY_ARRAY to copy array elements. The result is shorter
and safer, as it infers the element type automatically and does a (very)
basic type compatibility check for its first two arguments.
Coccinelle and contrib/coccinelle/array.cocci did not generate this
conversion due to the offset of 1 at both source and destination and
because the source is a const pointer; the semantic patch cautiously
handles only pure pointers and array references of the same type.
Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'compat')
-rw-r--r-- | compat/mingw.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compat/mingw.c b/compat/mingw.c index 738f0a826a..850b0ee93b 100644 --- a/compat/mingw.c +++ b/compat/mingw.c @@ -1562,7 +1562,7 @@ static int try_shell_exec(const char *cmd, char *const *argv) while (argv[argc]) argc++; ALLOC_ARRAY(argv2, argc + 1); argv2[0] = (char *)cmd; /* full path to the script file */ - memcpy(&argv2[1], &argv[1], sizeof(*argv) * argc); + COPY_ARRAY(&argv2[1], &argv[1], argc); exec_id = trace2_exec(prog, argv2); pid = mingw_spawnv(prog, argv2, 1); if (pid >= 0) { |