Signed-off-by: Christian Couder <chrisc...@tuxfamily.org>
---
 builtin/apply.c | 43 ++++++++++++++++++++++++-------------------
 1 file changed, 24 insertions(+), 19 deletions(-)

diff --git a/builtin/apply.c b/builtin/apply.c
index 66ebc9b..1676ce1 100644
--- a/builtin/apply.c
+++ b/builtin/apply.c
@@ -4667,6 +4667,29 @@ 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;
+       state->apply = 1;
+       state->newfd = -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);
+}
+
 int cmd_apply(int argc, const char **argv, const char *prefix_)
 {
        int i;
@@ -4746,25 +4769,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;
-       state.apply = 1;
-       state.newfd = -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);
+       init_apply_state(&state, prefix_);
 
        argc = parse_options(argc, argv, state.prefix, builtin_apply_options,
                        apply_usage, 0);
-- 
2.8.0.rc1.49.gca61272

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to