clear_marks(): rewrite to take an object_id argument

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Michael Haggerty committed May 25, 2015 at 18:39 UTC c50fb6cee6627ab9355e2d1e09fcab9dfe92cdb7
1 file changed +5 -8
fetch-pack.c
+5 -8
@@ -70,9 +70,10 @@ static int rev_list_insert_ref(const char *refname, const unsigned char *sha1, i
70 return 0;
71 }
72
73 -static int clear_marks(const char *refname, const unsigned char *sha1, int flag, void *cb_data)
73 +static int clear_marks(const char *refname, const struct object_id *oid,
74 + int flag, void *cb_data)
75 {
75 - struct object *o = deref_tag(parse_object(sha1), refname, 0);
76 + struct object *o = deref_tag(parse_object(oid->hash), refname, 0);
77
78 if (o && o->type == OBJ_COMMIT)
79 clear_commit_marks((struct commit *)o,
@@ -261,12 +262,8 @@ static int find_common(struct fetch_pack_args *args,
262
263 if (args->stateless_rpc && multi_ack == 1)
264 die("--stateless-rpc requires multi_ack_detailed");
264 - if (marked) {
265 - struct each_ref_fn_sha1_adapter wrapped_clear_marks =
266 - {clear_marks, NULL};
267 -
268 - for_each_ref(each_ref_fn_adapter, &wrapped_clear_marks);
269 - }
265 + if (marked)
266 + for_each_ref(clear_marks, NULL);
267 marked = 1;
268
269 for_each_ref(each_ref_fn_adapter, &wrapped_rev_list_insert_ref);