From f59793763deb970dd5acffe2dffd34e791d44df8 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Fri, 18 Oct 2019 00:58:51 -0400 Subject: fsck: only require an oid for skiplist functions The skiplist is inherently an oidset, so we don't need a full object struct. Let's take just the oid to give our callers more flexibility. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano diff --git a/fsck.c b/fsck.c index c036ba0..2309c40 100644 --- a/fsck.c +++ b/fsck.c @@ -277,9 +277,10 @@ static void append_msg_id(struct strbuf *sb, const char *msg_id) strbuf_addstr(sb, ": "); } -static int object_on_skiplist(struct fsck_options *opts, struct object *obj) +static int object_on_skiplist(struct fsck_options *opts, + const struct object_id *oid) { - return opts && obj && oidset_contains(&opts->skiplist, &obj->oid); + return opts && oid && oidset_contains(&opts->skiplist, oid); } __attribute__((format (printf, 4, 5))) @@ -293,7 +294,7 @@ static int report(struct fsck_options *options, struct object *object, if (msg_type == FSCK_IGNORE) return 0; - if (object_on_skiplist(options, object)) + if (object_on_skiplist(options, &object->oid)) return 0; if (msg_type == FSCK_FATAL) @@ -935,7 +936,7 @@ static int fsck_blob(struct blob *blob, const char *buf, return 0; oidset_insert(&gitmodules_done, &blob->object.oid); - if (object_on_skiplist(options, &blob->object)) + if (object_on_skiplist(options, &blob->object.oid)) return 0; if (!buf) { -- cgit v0.10.2-6-g49f6