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>
Brandon Williams committed
May 17, 2018 at 15:51 UTC
a3b78e833b06f4bfdef8c4d70d4d269226bebd09
2 files changed
+16
-16
commit.c
+15
-14
@@ -111,30 +111,31 @@ static int commit_graft_pos(struct repository *r, const unsigned char *sha1)
111
commit_graft_sha1_access);
112
}
113
114
-int register_commit_graft_the_repository(struct commit_graft *graft, int ignore_dups)
114
+int register_commit_graft(struct repository *r, struct commit_graft *graft,
115
+ int ignore_dups)
116
{
116
- int pos = commit_graft_pos(the_repository, graft->oid.hash);
117
+ int pos = commit_graft_pos(r, graft->oid.hash);
118
119
if (0 <= pos) {
120
if (ignore_dups)
121
free(graft);
122
else {
122
- free(the_repository->parsed_objects->grafts[pos]);
123
- the_repository->parsed_objects->grafts[pos] = graft;
123
+ free(r->parsed_objects->grafts[pos]);
124
+ r->parsed_objects->grafts[pos] = graft;
125
}
126
return 1;
127
}
128
pos = -pos - 1;
128
- ALLOC_GROW(the_repository->parsed_objects->grafts,
129
- the_repository->parsed_objects->grafts_nr + 1,
130
- the_repository->parsed_objects->grafts_alloc);
131
- the_repository->parsed_objects->grafts_nr++;
132
- if (pos < the_repository->parsed_objects->grafts_nr)
133
- memmove(the_repository->parsed_objects->grafts + pos + 1,
134
- the_repository->parsed_objects->grafts + pos,
135
- (the_repository->parsed_objects->grafts_nr - pos - 1) *
136
- sizeof(*the_repository->parsed_objects->grafts));
137
- the_repository->parsed_objects->grafts[pos] = graft;
129
+ ALLOC_GROW(r->parsed_objects->grafts,
130
+ r->parsed_objects->grafts_nr + 1,
131
+ r->parsed_objects->grafts_alloc);
132
+ r->parsed_objects->grafts_nr++;
133
+ if (pos < r->parsed_objects->grafts_nr)
134
+ memmove(r->parsed_objects->grafts + pos + 1,
135
+ r->parsed_objects->grafts + pos,
136
+ (r->parsed_objects->grafts_nr - pos - 1) *
137
+ sizeof(*r->parsed_objects->grafts));
138
+ r->parsed_objects->grafts[pos] = graft;
139
return 0;
140
}
141
commit.h
+1
-2
@@ -174,8 +174,7 @@ struct commit_graft {
174
typedef int (*each_commit_graft_fn)(const struct commit_graft *, void *);
175
176
struct commit_graft *read_graft_line(struct strbuf *line);
177
-#define register_commit_graft(r, g, i) register_commit_graft_##r(g, i)
178
-int register_commit_graft_the_repository(struct commit_graft *, int);
177
+int register_commit_graft(struct repository *r, struct commit_graft *, int);
178
#define lookup_commit_graft(r, o) lookup_commit_graft_##r(o)
179
struct commit_graft *lookup_commit_graft_the_repository(const struct object_id *oid);
180