[2/2] use COPY_ARRAY for copying arrays
diff mbox series

Message ID e09e49a6-8f6d-1f26-005a-bec5f99414dd@web.de
State New
Headers show
Series
  • [1/2] coccinelle: use COPY_ARRAY for copying arrays
Related show

Commit Message

René Scharfe June 15, 2019, 6:36 p.m. UTC
Convert calls of memcpy(3) to use COPY_ARRAY, which shortens and
simplifies the code a bit.

Patch generated by Coccinelle and contrib/coccinelle/array.cocci.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
---
 fast-import.c | 2 +-
 kwset.c       | 2 +-
 packfile.c    | 6 +++---
 pretty.c      | 4 ++--
 4 files changed, 7 insertions(+), 7 deletions(-)

--
2.22.0

Comments

Derrick Stolee June 17, 2019, 1:14 a.m. UTC | #1
On 6/15/2019 2:36 PM, René Scharfe wrote:
> Convert calls of memcpy(3) to use COPY_ARRAY, which shortens and
> simplifies the code a bit.

These changes do look simpler. Thanks!

> Patch generated by Coccinelle and contrib/coccinelle/array.cocci.

And this auto-generation is particularly useful!

> 
> Signed-off-by: Rene Scharfe <l.s.r@web.de>
> ---
>  fast-import.c | 2 +-
>  kwset.c       | 2 +-
>  packfile.c    | 6 +++---
>  pretty.c      | 4 ++--
>  4 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/kwset.c b/kwset.c
> index 4fb6455aca..090ffcafa2 100644
> --- a/kwset.c
> +++ b/kwset.c
> @@ -475,7 +475,7 @@ kwsprep (kwset_t kws)
>  	for (i = 0; i < NCHAR; ++i)
>  	  kwset->next[i] = next[U(trans[i])];
>        else
> -	memcpy(kwset->next, next, NCHAR * sizeof(struct trie *));
> +	COPY_ARRAY(kwset->next, next, NCHAR);

I was unfamiliar with kwset.c, so I took a look and noticed that
it was adapted from GNU grep, so this change takes us even farther
from the original source (and closer to Git source conventions).

I think this is the right thing to do, but thought I'd point it
out in case anyone thought differently.

Both patches LGTM.

Thanks,
-Stolee

Patch
diff mbox series

diff --git a/fast-import.c b/fast-import.c
index 76a7bd3699..6dfdd6801c 100644
--- a/fast-import.c
+++ b/fast-import.c
@@ -644,7 +644,7 @@  static struct tree_content *grow_tree_content(
 	struct tree_content *r = new_tree_content(t->entry_count + amt);
 	r->entry_count = t->entry_count;
 	r->delta_depth = t->delta_depth;
-	memcpy(r->entries,t->entries,t->entry_count*sizeof(t->entries[0]));
+	COPY_ARRAY(r->entries, t->entries, t->entry_count);
 	release_tree_content(t);
 	return r;
 }
diff --git a/kwset.c b/kwset.c
index 4fb6455aca..090ffcafa2 100644
--- a/kwset.c
+++ b/kwset.c
@@ -475,7 +475,7 @@  kwsprep (kwset_t kws)
 	for (i = 0; i < NCHAR; ++i)
 	  kwset->next[i] = next[U(trans[i])];
       else
-	memcpy(kwset->next, next, NCHAR * sizeof(struct trie *));
+	COPY_ARRAY(kwset->next, next, NCHAR);
     }

   /* Fix things up for any translation table. */
diff --git a/packfile.c b/packfile.c
index d786ec7312..d55cb7f013 100644
--- a/packfile.c
+++ b/packfile.c
@@ -1269,7 +1269,7 @@  static enum object_type packed_to_object_type(struct repository *r,
 		if (poi_stack_nr >= poi_stack_alloc && poi_stack == small_poi_stack) {
 			poi_stack_alloc = alloc_nr(poi_stack_nr);
 			ALLOC_ARRAY(poi_stack, poi_stack_alloc);
-			memcpy(poi_stack, small_poi_stack, sizeof(off_t)*poi_stack_nr);
+			COPY_ARRAY(poi_stack, small_poi_stack, poi_stack_nr);
 		} else {
 			ALLOC_GROW(poi_stack, poi_stack_nr+1, poi_stack_alloc);
 		}
@@ -1679,8 +1679,8 @@  void *unpack_entry(struct repository *r, struct packed_git *p, off_t obj_offset,
 		    && delta_stack == small_delta_stack) {
 			delta_stack_alloc = alloc_nr(delta_stack_nr);
 			ALLOC_ARRAY(delta_stack, delta_stack_alloc);
-			memcpy(delta_stack, small_delta_stack,
-			       sizeof(*delta_stack)*delta_stack_nr);
+			COPY_ARRAY(delta_stack, small_delta_stack,
+				   delta_stack_nr);
 		} else {
 			ALLOC_GROW(delta_stack, delta_stack_nr+1, delta_stack_alloc);
 		}
diff --git a/pretty.c b/pretty.c
index ced0485257..e4ed14effe 100644
--- a/pretty.c
+++ b/pretty.c
@@ -106,8 +106,8 @@  static void setup_commit_formats(void)
 	commit_formats_len = ARRAY_SIZE(builtin_formats);
 	builtin_formats_len = commit_formats_len;
 	ALLOC_GROW(commit_formats, commit_formats_len, commit_formats_alloc);
-	memcpy(commit_formats, builtin_formats,
-	       sizeof(*builtin_formats)*ARRAY_SIZE(builtin_formats));
+	COPY_ARRAY(commit_formats, builtin_formats,
+		   ARRAY_SIZE(builtin_formats));

 	git_config(git_pretty_formats_config, NULL);
 }