Thread (133 messages) 133 messages, 6 authors, 2016-06-16

Re: [PATCH 45/83] builtin/apply: move 'state' init into init_apply_state()

From: Christian Couder <hidden>
Date: 2016-06-16 02:19:01

On Mon, Apr 25, 2016 at 9:32 AM, Eric Sunshine [off-list ref] wrote:
On Sun, Apr 24, 2016 at 9:33 AM, Christian Couder
[off-list ref] wrote:
quoted
Signed-off-by: Christian Couder <redacted>
---
diff --git a/builtin/apply.c b/builtin/apply.c
@@ -4670,6 +4670,28 @@ static int option_parse_directory(const struct option *opt,
+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;
+       state->apply = 1;
+       state->line_termination = '\n';
+       state->p_value = 1;
+       state->p_context = UINT_MAX;
+       state->squelch_whitespace_errors = 5;
+       state->ws_error_action = warn_on_ws_error;
+       state->ws_ignore_action = ignore_ws_none;
+       state->linenr = 1;
+       strbuf_init(&state->root, 0);
+
+       git_apply_config();
+       if (apply_default_whitespace)
+               parse_whitespace_option(state, apply_default_whitespace);
+       if (apply_default_ignorewhitespace)
+               parse_ignorewhitespace_option(state, apply_default_ignorewhitespace);
+}
Minor:

If factoring out this code from cmd_apply() into init_apply_state()
was done as a preparatory patch before introduction of 'apply_state',
then each new 'state->foo=...' line would already be at its final
location when added by its respective patch.
Yeah I agree. So I did something like that.
And by the way while doing it I saw that Junio also suggested a similar change.

The little difference with what you and Junio suggest is that the
patch that creates init_apply_state() is just after the patch that
introduces 'struct apply_state'. I think it is a bit cleaner this way,
as if I create init_apply_state() first, then I would have to change
its arguments in the next patch that introduces 'struct apply_state'.
Doing so would also provide an obvious opportunity to name the
'prefix' argument to init_apply_state() "prefix" rather than the odd
"prefix_".
Yeah, I did that too.

Thanks,
Christian.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help