diff options
author | René Scharfe <l.s.r@web.de> | 2017-02-25 10:30:03 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-02-27 19:02:05 (GMT) |
commit | 3f64699ffde6cd2152db2106505a2310601a207f (patch) | |
tree | 4642e6ba0aaaa6d6ba8c639a91d91187794fbb0f /contrib | |
parent | 3b9e3c2cede15057af3ff8076c45ad5f33829436 (diff) | |
download | git-3f64699ffde6cd2152db2106505a2310601a207f.zip git-3f64699ffde6cd2152db2106505a2310601a207f.tar.gz git-3f64699ffde6cd2152db2106505a2310601a207f.tar.bz2 |
cocci: use ALLOC_ARRAY
Add a semantic patch for using ALLOC_ARRAY to allocate arrays and apply
the transformation on the current source tree. The macro checks for
multiplication overflow and infers the element size automatically; the
result is shorter and safer code.
Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/coccinelle/array.cocci | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/contrib/coccinelle/array.cocci b/contrib/coccinelle/array.cocci index 2d7f25d..4ba98b7 100644 --- a/contrib/coccinelle/array.cocci +++ b/contrib/coccinelle/array.cocci @@ -24,3 +24,19 @@ expression n; @@ - memcpy(dst, src, n * sizeof(T)); + COPY_ARRAY(dst, src, n); + +@@ +type T; +T *ptr; +expression n; +@@ +- ptr = xmalloc(n * sizeof(*ptr)); ++ ALLOC_ARRAY(ptr, n); + +@@ +type T; +T *ptr; +expression n; +@@ +- ptr = xmalloc(n * sizeof(T)); ++ ALLOC_ARRAY(ptr, n); |