bundle.c: use a temporary variable for OIDs and names
In preparation for moving away from accessing the OID and name via the "oid" and "name" slots in a subsequent commit, change the code that accesses it to use named variables. This makes the subsequent change smaller. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ævar Arnfjörð Bjarmason committed
Jul 2, 2021 at 11:57 UTC
15e7c7dca66ab7b020316696f54433f76e5e1084
2 files changed
+22
-10
bundle.c
+18
-8
@@ -156,6 +156,9 @@ static int list_refs(struct ref_list *r, int argc, const char **argv)
156
int i;
157
158
for (i = 0; i < r->nr; i++) {
159
+ struct object_id *oid;
160
+ const char *name;
161
+
162
if (argc > 1) {
163
int j;
164
for (j = 1; j < argc; j++)
@@ -164,8 +167,10 @@ static int list_refs(struct ref_list *r, int argc, const char **argv)
167
if (j == argc)
168
continue;
169
}
167
- printf("%s %s\n", oid_to_hex(&r->list[i].oid),
168
- r->list[i].name);
170
+
171
+ oid = &r->list[i].oid;
172
+ name = r->list[i].name;
173
+ printf("%s %s\n", oid_to_hex(oid), name);
174
}
175
return 0;
176
}
@@ -194,15 +199,17 @@ int verify_bundle(struct repository *r,
199
repo_init_revisions(r, &revs, NULL);
200
for (i = 0; i < p->nr; i++) {
201
struct ref_list_entry *e = p->list + i;
197
- struct object *o = parse_object(r, &e->oid);
202
+ const char *name = e->name;
203
+ struct object_id *oid = &e->oid;
204
+ struct object *o = parse_object(r, oid);
205
if (o) {
206
o->flags |= PREREQ_MARK;
200
- add_pending_object(&revs, o, e->name);
207
+ add_pending_object(&revs, o, name);
208
continue;
209
}
210
if (++ret == 1)
211
error("%s", message);
205
- error("%s %s", oid_to_hex(&e->oid), e->name);
212
+ error("%s %s", oid_to_hex(oid), name);
213
}
214
if (revs.pending.nr != p->nr)
215
return ret;
@@ -219,19 +226,22 @@ int verify_bundle(struct repository *r,
226
227
for (i = 0; i < p->nr; i++) {
228
struct ref_list_entry *e = p->list + i;
222
- struct object *o = parse_object(r, &e->oid);
229
+ const char *name = e->name;
230
+ struct object_id *oid = &e->oid;
231
+ struct object *o = parse_object(r, oid);
232
assert(o); /* otherwise we'd have returned early */
233
if (o->flags & SHOWN)
234
continue;
235
if (++ret == 1)
236
error("%s", message);
228
- error("%s %s", oid_to_hex(&e->oid), e->name);
237
+ error("%s %s", oid_to_hex(oid), name);
238
}
239
240
/* Clean up objects used, as they will be reused. */
241
for (i = 0; i < p->nr; i++) {
242
struct ref_list_entry *e = p->list + i;
234
- commit = lookup_commit_reference_gently(r, &e->oid, 1);
243
+ struct object_id *oid = &e->oid;
244
+ commit = lookup_commit_reference_gently(r, oid, 1);
245
if (commit)
246
clear_commit_marks(commit, ALL_REV_FLAGS);
247
}
transport.c
+4
-2
@@ -148,8 +148,10 @@ static struct ref *get_refs_from_bundle(struct transport *transport,
148
149
for (i = 0; i < data->header.references.nr; i++) {
150
struct ref_list_entry *e = data->header.references.list + i;
151
- struct ref *ref = alloc_ref(e->name);
152
- oidcpy(&ref->old_oid, &e->oid);
151
+ const char *name = e->name;
152
+ struct ref *ref = alloc_ref(name);
153
+ struct object_id *oid = &e->oid;
154
+ oidcpy(&ref->old_oid, oid);
155
ref->next = result;
156
result = ref;
157
}