fsck.c: refactor and rename common config callback
Refactor code I recently changed in1f3299fda9
(fsck: make fsck_config() re-usable, 2021-01-05) so that I could use fsck's config callback in mktag in1f3299fda9
(fsck: make fsck_config() re-usable, 2021-01-05). I don't know what I was thinking in structuring the code this way, but it clearly makes no sense to have an fsck_config_internal() at all just so it can get a fsck_options when git_config() already supports passing along some void* data. Let's just make use of that instead, which gets us rid of the two wrapper functions, and brings fsck's common config callback in line with other such reusable config callbacks. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
a5828ae6b5
commit
fb79f5bff7
@ -71,11 +71,6 @@ static const char *printable_type(const struct object_id *oid,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int fsck_config(const char *var, const char *value, void *cb)
|
|
||||||
{
|
|
||||||
return fsck_config_internal(var, value, cb, &fsck_obj_options);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int objerror(struct object *obj, const char *err)
|
static int objerror(struct object *obj, const char *err)
|
||||||
{
|
{
|
||||||
errors_found |= ERROR_OBJECT;
|
errors_found |= ERROR_OBJECT;
|
||||||
@ -803,7 +798,7 @@ int cmd_fsck(int argc, const char **argv, const char *prefix)
|
|||||||
if (name_objects)
|
if (name_objects)
|
||||||
fsck_enable_object_names(&fsck_walk_options);
|
fsck_enable_object_names(&fsck_walk_options);
|
||||||
|
|
||||||
git_config(fsck_config, NULL);
|
git_config(git_fsck_config, &fsck_obj_options);
|
||||||
|
|
||||||
if (connectivity_only) {
|
if (connectivity_only) {
|
||||||
for_each_loose_object(mark_loose_for_connectivity, NULL, 0);
|
for_each_loose_object(mark_loose_for_connectivity, NULL, 0);
|
||||||
|
@ -14,11 +14,6 @@ static int option_strict = 1;
|
|||||||
|
|
||||||
static struct fsck_options fsck_options = FSCK_OPTIONS_STRICT;
|
static struct fsck_options fsck_options = FSCK_OPTIONS_STRICT;
|
||||||
|
|
||||||
static int mktag_config(const char *var, const char *value, void *cb)
|
|
||||||
{
|
|
||||||
return fsck_config_internal(var, value, cb, &fsck_options);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int mktag_fsck_error_func(struct fsck_options *o,
|
static int mktag_fsck_error_func(struct fsck_options *o,
|
||||||
const struct object_id *oid,
|
const struct object_id *oid,
|
||||||
enum object_type object_type,
|
enum object_type object_type,
|
||||||
@ -93,7 +88,7 @@ int cmd_mktag(int argc, const char **argv, const char *prefix)
|
|||||||
fsck_options.error_func = mktag_fsck_error_func;
|
fsck_options.error_func = mktag_fsck_error_func;
|
||||||
fsck_set_msg_type(&fsck_options, "extraheaderentry", "warn");
|
fsck_set_msg_type(&fsck_options, "extraheaderentry", "warn");
|
||||||
/* config might set fsck.extraHeaderEntry=* again */
|
/* config might set fsck.extraHeaderEntry=* again */
|
||||||
git_config(mktag_config, NULL);
|
git_config(git_fsck_config, &fsck_options);
|
||||||
if (fsck_tag_standalone(NULL, buf.buf, buf.len, &fsck_options,
|
if (fsck_tag_standalone(NULL, buf.buf, buf.len, &fsck_options,
|
||||||
&tagged_oid, &tagged_type))
|
&tagged_oid, &tagged_type))
|
||||||
die(_("tag on stdin did not pass our strict fsck check"));
|
die(_("tag on stdin did not pass our strict fsck check"));
|
||||||
|
4
fsck.c
4
fsck.c
@ -1323,9 +1323,9 @@ int fsck_finish(struct fsck_options *options)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
int fsck_config_internal(const char *var, const char *value, void *cb,
|
int git_fsck_config(const char *var, const char *value, void *cb)
|
||||||
struct fsck_options *options)
|
|
||||||
{
|
{
|
||||||
|
struct fsck_options *options = cb;
|
||||||
if (strcmp(var, "fsck.skiplist") == 0) {
|
if (strcmp(var, "fsck.skiplist") == 0) {
|
||||||
const char *path;
|
const char *path;
|
||||||
struct strbuf sb = STRBUF_INIT;
|
struct strbuf sb = STRBUF_INIT;
|
||||||
|
3
fsck.h
3
fsck.h
@ -109,7 +109,6 @@ const char *fsck_describe_object(struct fsck_options *options,
|
|||||||
* git_config() callback for use by fsck-y tools that want to support
|
* git_config() callback for use by fsck-y tools that want to support
|
||||||
* fsck.<msg> fsck.skipList etc.
|
* fsck.<msg> fsck.skipList etc.
|
||||||
*/
|
*/
|
||||||
int fsck_config_internal(const char *var, const char *value, void *cb,
|
int git_fsck_config(const char *var, const char *value, void *cb);
|
||||||
struct fsck_options *options);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user