diff options
author | Jeff King <peff@peff.net> | 2019-10-18 00:58:51 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-10-28 14:05:18 +0900 |
commit | f59793763deb970dd5acffe2dffd34e791d44df8 (patch) | |
tree | 2f5ad6b11d182f3ed5c0badcdbcaaf96855a3979 | |
parent | fsck: only provide oid/type in fsck_error callback (diff) | |
download | tgif-f59793763deb970dd5acffe2dffd34e791d44df8.tar.xz |
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 <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | fsck.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -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) { |