Re: [PATCH v2 09/94] builtin/apply: move 'state' init into init_apply_state()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 12, 2016, 19:25 UTC
- Message-ID
- <xmqq60ujf593.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20160511131745.2914-10-chriscool@tuxfamily.org>
Christian Couder <christian.couder@gmail.com> writes:
Show 5 quoted lines
> When the apply functionality will be libified, the 'struct apply_state' > will be used by different pieces of code. > > To properly initialize a 'struct apply_state', let's provide a nice > and easy to use init_apply_state() function.
This probably should be done at 08/94, but I'll let it pass for now. I am hoping 'prefix' is just one of a very few parameters this function needs to take to initialize this (I do not think we want to feed many different parameters to this function to initialize).
Will queue.
Show 48 quoted lines
> Helped-by: Eric Sunshine <sunshine@sunshineco.com>
> Reviewed-by: Stefan Beller <sbeller@google.com>
> Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
> ---
> builtin/apply.c | 23 ++++++++++++++---------
> 1 file changed, 14 insertions(+), 9 deletions(-)
>
> diff --git a/builtin/apply.c b/builtin/apply.c
> index ae068e7..e133033 100644
> --- a/builtin/apply.c
> +++ b/builtin/apply.c
> @@ -4522,6 +4522,19 @@ static int option_parse_directory(const struct option *opt,
> return 0;
> }
>
> +static void init_apply_state(struct apply_state *state, const char *prefix)
> +{
> + memset(state, 0, sizeof(*state));
> + state->prefix = prefix;
> + state->prefix_length = state->prefix ? strlen(state->prefix) : 0;
> +
> + git_apply_config();
> + if (apply_default_whitespace)
> + parse_whitespace_option(apply_default_whitespace);
> + if (apply_default_ignorewhitespace)
> + parse_ignorewhitespace_option(apply_default_ignorewhitespace);
> +}
> +
> int cmd_apply(int argc, const char **argv, const char *prefix_)
> {
> int i;
> @@ -4603,15 +4616,7 @@ int cmd_apply(int argc, const char **argv, const char *prefix_)
> OPT_END()
> };
>
> - memset(&state, 0, sizeof(state));
> - state.prefix = prefix_;
> - state.prefix_length = state.prefix ? strlen(state.prefix) : 0;
> -
> - git_apply_config();
> - if (apply_default_whitespace)
> - parse_whitespace_option(apply_default_whitespace);
> - if (apply_default_ignorewhitespace)
> - parse_ignorewhitespace_option(apply_default_ignorewhitespace);
> + init_apply_state(&state, prefix_);
>
> argc = parse_options(argc, argv, state.prefix, builtin_apply_options,
> apply_usage, 0);