builtin/apply: move 'unsafe_paths' global into 'struct apply_state'
authorChristian Couder <christian.couder@gmail.com>
Tue, 24 May 2016 08:11:01 +0000 (10:11 +0200)
committerJunio C Hamano <gitster@pobox.com>
Wed, 1 Jun 2016 17:10:16 +0000 (10:10 -0700)
To libify the apply functionality the 'unsafe_paths' variable should
not be static and global to the file. Let's move it into
'struct apply_state'.

Reviewed-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/apply.c
index 604e7bf8ff3f4c519243f1042d3d461972faf4d8..4ef83c1be573d2c26f58d60646de8fa37e5df1ac 100644 (file)
@@ -44,6 +44,7 @@ struct apply_state {
        int no_add;
        int threeway;
        int unidiff_zero;
+       int unsafe_paths;
 };
 
 /*
@@ -54,7 +55,6 @@ static int newfd = -1;
 static int state_p_value = 1;
 static int p_value_known;
 static int apply = 1;
-static int unsafe_paths;
 static const char *fake_ancestor;
 static int line_termination = '\n';
 static unsigned int p_context = UINT_MAX;
@@ -3827,7 +3827,7 @@ static int check_patch(struct apply_state *state, struct patch *patch)
                }
        }
 
-       if (!unsafe_paths)
+       if (!state->unsafe_paths)
                die_on_unsafe_path(patch);
 
        /*
@@ -4616,7 +4616,7 @@ int cmd_apply(int argc, const char **argv, const char *prefix)
                        N_("make sure the patch is applicable to the current index")),
                OPT_BOOL(0, "cached", &state.cached,
                        N_("apply a patch without touching the working tree")),
-               OPT_BOOL(0, "unsafe-paths", &unsafe_paths,
+               OPT_BOOL(0, "unsafe-paths", &state.unsafe_paths,
                        N_("accept a patch that touches outside the working area")),
                OPT_BOOL(0, "apply", &force_apply,
                        N_("also apply the patch (use with --stat/--summary/--check)")),
@@ -4685,7 +4685,7 @@ int cmd_apply(int argc, const char **argv, const char *prefix)
                state.check_index = 1;
        }
        if (state.check_index)
-               unsafe_paths = 0;
+               state.unsafe_paths = 0;
 
        for (i = 0; i < argc; i++) {
                const char *arg = argv[i];