From: Junio C Hamano Date: Tue, 9 Jul 2019 22:25:38 +0000 (-0700) Subject: Merge branch 'rs/copy-array' X-Git-Tag: v2.23.0-rc0~81 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/e8d259064146f24abb1280aff0ca3ead20218244?ds=inline;hp=-c Merge branch 'rs/copy-array' Code clean-up. * rs/copy-array: use COPY_ARRAY for copying arrays coccinelle: use COPY_ARRAY for copying arrays --- e8d259064146f24abb1280aff0ca3ead20218244 diff --combined fast-import.c index 76a7bd3699,606d44278d..6dfdd6801c --- a/fast-import.c +++ b/fast-import.c @@@ -644,7 -644,7 +644,7 @@@ static struct tree_content *grow_tree_c 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; } @@@ -2585,7 -2585,6 +2585,7 @@@ static void parse_new_commit(const cha struct branch *b; char *author = NULL; char *committer = NULL; + const char *encoding = NULL; struct hash_list *merge_list = NULL; unsigned int merge_count; unsigned char prev_fanout, new_fanout; @@@ -2608,8 -2607,6 +2608,8 @@@ } if (!committer) die("Expected committer but didn't get one"); + if (skip_prefix(command_buf.buf, "encoding ", &encoding)) + read_next_command(); parse_data(&msg, 0, NULL); read_next_command(); parse_from(b); @@@ -2673,13 -2670,9 +2673,13 @@@ } strbuf_addf(&new_data, "author %s\n" - "committer %s\n" - "\n", + "committer %s\n", author ? author : committer, committer); + if (encoding) + strbuf_addf(&new_data, + "encoding %s\n", + encoding); + strbuf_addch(&new_data, '\n'); strbuf_addbuf(&new_data, &msg); free(author); free(committer); diff --combined packfile.c index ed61187504,2ff570fbfd..c0d83fdfed --- a/packfile.c +++ b/packfile.c @@@ -16,7 -16,6 +16,7 @@@ #include "tree.h" #include "object-store.h" #include "midx.h" +#include "commit-graph.h" char *odb_pack_name(struct strbuf *buf, const unsigned char *sha1, @@@ -337,7 -336,7 +337,7 @@@ void close_pack(struct packed_git *p close_pack_index(p); } -void close_all_packs(struct raw_object_store *o) +void close_object_store(struct raw_object_store *o) { struct packed_git *p; @@@ -351,8 -350,6 +351,8 @@@ close_midx(o->multi_pack_index); o->multi_pack_index = NULL; } + + close_commit_graph(o); } /* @@@ -643,7 -640,7 +643,7 @@@ unsigned char *use_pack(struct packed_g while (packed_git_limit < pack_mapped && unuse_one_window(p)) ; /* nothing */ - win->base = xmmap(NULL, win->len, + win->base = xmmap_gently(NULL, win->len, PROT_READ, MAP_PRIVATE, p->pack_fd, win->offset); if (win->base == MAP_FAILED) @@@ -1272,7 -1269,7 +1272,7 @@@ static enum object_type packed_to_objec 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); } @@@ -1682,8 -1679,8 +1682,8 @@@ void *unpack_entry(struct repository *r && 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); }