sequencer: use argv_array in reset_merge
Avoid using magic numbers for array size and index under `reset_merge` function. Use `argv_array` instead. This will make code shorter and easier to extend. Signed-off-by: Rohit Ashiwal <rohit.ashiwal265@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Rohit Ashiwal committed
Jul 2, 2019 at 14:41 UTC
265ab48f2646605b27e1343ac50efa9763690f04
1 file changed
+11
-6
sequencer.c
+11
-6
@@ -2734,13 +2734,18 @@ static int rollback_is_safe(void)
2734
2735
static int reset_merge(const struct object_id *oid)
2736
{
2737
- const char *argv[4]; /* reset --merge <arg> + NULL */
2737
+ int ret;
2738
+ struct argv_array argv = ARGV_ARRAY_INIT;
2739
2739
- argv[0] = "reset";
2740
- argv[1] = "--merge";
2741
- argv[2] = oid_to_hex(oid);
2742
- argv[3] = NULL;
2743
- return run_command_v_opt(argv, RUN_GIT_CMD);
2740
+ argv_array_pushl(&argv, "reset", "--merge", NULL);
2741
+
2742
+ if (!is_null_oid(oid))
2743
+ argv_array_push(&argv, oid_to_hex(oid));
2744
+
2745
+ ret = run_command_v_opt(argv.argv, RUN_GIT_CMD);
2746
+ argv_array_clear(&argv);
2747
+
2748
+ return ret;
2749
}
2750
2751
static int rollback_single_pick(struct repository *r)