dir.[ch]: replace dir_init() with DIR_INIT
Remove the dir_init() function and replace it with a DIR_INIT macro. In many cases in the codebase we need to initialize things with a function for good reasons, e.g. needing to call another function on initialization. The "dir_init()" function was not one such case, and could trivially be replaced with a more idiomatic macro initialization pattern. The only place where we made use of its use of memset() was in dir_clear() itself, which resets the contents of an an existing struct pointer. Let's use the new "memcpy() a 'blank' struct on the stack" idiom to do that reset. 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
5726a6b401
commit
ce93a4c612
@ -641,7 +641,7 @@ static int clean_cmd(void)
|
||||
|
||||
static int filter_by_patterns_cmd(void)
|
||||
{
|
||||
struct dir_struct dir;
|
||||
struct dir_struct dir = DIR_INIT;
|
||||
struct strbuf confirm = STRBUF_INIT;
|
||||
struct strbuf **ignore_list;
|
||||
struct string_list_item *item;
|
||||
@ -665,7 +665,6 @@ static int filter_by_patterns_cmd(void)
|
||||
if (!confirm.len)
|
||||
break;
|
||||
|
||||
dir_init(&dir);
|
||||
pl = add_pattern_list(&dir, EXC_CMDL, "manual exclude");
|
||||
ignore_list = strbuf_split_max(&confirm, ' ', 0);
|
||||
|
||||
@ -890,7 +889,7 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
|
||||
int ignored_only = 0, config_set = 0, errors = 0, gone = 1;
|
||||
int rm_flags = REMOVE_DIR_KEEP_NESTED_GIT;
|
||||
struct strbuf abs_path = STRBUF_INIT;
|
||||
struct dir_struct dir;
|
||||
struct dir_struct dir = DIR_INIT;
|
||||
struct pathspec pathspec;
|
||||
struct strbuf buf = STRBUF_INIT;
|
||||
struct string_list exclude_list = STRING_LIST_INIT_NODUP;
|
||||
@ -921,7 +920,6 @@ int cmd_clean(int argc, const char **argv, const char *prefix)
|
||||
argc = parse_options(argc, argv, prefix, options, builtin_clean_usage,
|
||||
0);
|
||||
|
||||
dir_init(&dir);
|
||||
if (!interactive && !dry_run && !force) {
|
||||
if (config_set)
|
||||
die(_("clean.requireForce set to true and neither -i, -n, nor -f given; "
|
||||
|
Reference in New Issue
Block a user