diff options
author | Brandon Williams <bmwill@google.com> | 2018-05-18 01:51:48 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-05-18 02:13:10 +0300 |
commit | a3b78e833b06f4bfdef8c4d70d4d269226bebd09 (patch) | |
tree | d9ecbf4ba0988e1e8a60a3eede531ee5af7e8077 | |
parent | e808656c46e9d0e2e446b304a6f4d1f7dd0b25b5 (diff) |
commit: convert register_commit_graft to handle arbitrary repositories
Signed-off-by: Brandon Williams <bmwill@google.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | commit.c | 29 | ||||
-rw-r--r-- | commit.h | 3 |
2 files changed, 16 insertions, 16 deletions
@@ -111,30 +111,31 @@ static int commit_graft_pos(struct repository *r, const unsigned char *sha1) commit_graft_sha1_access); } -int register_commit_graft_the_repository(struct commit_graft *graft, int ignore_dups) +int register_commit_graft(struct repository *r, struct commit_graft *graft, + int ignore_dups) { - int pos = commit_graft_pos(the_repository, graft->oid.hash); + int pos = commit_graft_pos(r, graft->oid.hash); if (0 <= pos) { if (ignore_dups) free(graft); else { - free(the_repository->parsed_objects->grafts[pos]); - the_repository->parsed_objects->grafts[pos] = graft; + free(r->parsed_objects->grafts[pos]); + r->parsed_objects->grafts[pos] = graft; } return 1; } pos = -pos - 1; - ALLOC_GROW(the_repository->parsed_objects->grafts, - the_repository->parsed_objects->grafts_nr + 1, - the_repository->parsed_objects->grafts_alloc); - the_repository->parsed_objects->grafts_nr++; - if (pos < the_repository->parsed_objects->grafts_nr) - memmove(the_repository->parsed_objects->grafts + pos + 1, - the_repository->parsed_objects->grafts + pos, - (the_repository->parsed_objects->grafts_nr - pos - 1) * - sizeof(*the_repository->parsed_objects->grafts)); - the_repository->parsed_objects->grafts[pos] = graft; + ALLOC_GROW(r->parsed_objects->grafts, + r->parsed_objects->grafts_nr + 1, + r->parsed_objects->grafts_alloc); + r->parsed_objects->grafts_nr++; + if (pos < r->parsed_objects->grafts_nr) + memmove(r->parsed_objects->grafts + pos + 1, + r->parsed_objects->grafts + pos, + (r->parsed_objects->grafts_nr - pos - 1) * + sizeof(*r->parsed_objects->grafts)); + r->parsed_objects->grafts[pos] = graft; return 0; } @@ -174,8 +174,7 @@ struct commit_graft { typedef int (*each_commit_graft_fn)(const struct commit_graft *, void *); struct commit_graft *read_graft_line(struct strbuf *line); -#define register_commit_graft(r, g, i) register_commit_graft_##r(g, i) -int register_commit_graft_the_repository(struct commit_graft *, int); +int register_commit_graft(struct repository *r, struct commit_graft *, int); #define lookup_commit_graft(r, o) lookup_commit_graft_##r(o) struct commit_graft *lookup_commit_graft_the_repository(const struct object_id *oid); |