fetch-pack: split out fsck config parsing
When `fetch_pack_config()` is invoked, fetch-pack configuration is parsed from the config. As part of this operation, fsck message severity configuration is assigned to the `fsck_msg_types` global variable. This is optionally used to configure the downstream git-index-pack(1) when the `--strict` option is specified. The same parsed fsck message severity configuration is also needed outside of fetch-pack. Instead of exposing/relying on the existing global state, split out the fsck config parsing logic into `fetch_pack_fsck_config()` and expose it. In a subsequent commit, this is used to provide fsck configuration when invoking `unbundle()`. For `fetch_pack_fsck_config()` to discern between errors and unhandled config variables, the return code when `git_config_path()` errors is changed to a different value also indicating success. This frees up the previous return code to now indicate the provided config variable was unhandled. The behavior remains functionally the same. Signed-off-by: Justin Tobler <jltobler@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
187574ce86
commit
05596e93c5
11
fetch-pack.h
11
fetch-pack.h
@ -106,4 +106,15 @@ int report_unmatched_refs(struct ref **sought, int nr_sought);
|
||||
*/
|
||||
int fetch_pack_fsck_objects(void);
|
||||
|
||||
/*
|
||||
* Check if the provided config variable pertains to fetch fsck and if so append
|
||||
* the configuration to the provided strbuf.
|
||||
*
|
||||
* When a fetch fsck config option is successfully processed the function
|
||||
* returns 0. If the provided config option is unrelated to fetch fsck, 1 is
|
||||
* returned. Errors return -1.
|
||||
*/
|
||||
int fetch_pack_fsck_config(const char *var, const char *value,
|
||||
struct strbuf *msg_types);
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user