diff options
author | Rohit Ashiwal <rohit.ashiwal265@gmail.com> | 2019-07-02 11:11:27 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-07-02 21:08:08 +0200 |
commit | 265ab48f2646605b27e1343ac50efa9763690f04 (patch) | |
tree | cec22311a71d6565b0b3078a38a473bc3a100036 /sequencer.c | |
parent | sequencer: rename reset_for_rollback to reset_merge (diff) | |
download | git-265ab48f2646605b27e1343ac50efa9763690f04.tar.xz git-265ab48f2646605b27e1343ac50efa9763690f04.zip |
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>
Diffstat (limited to 'sequencer.c')
-rw-r--r-- | sequencer.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/sequencer.c b/sequencer.c index e8779c7cc5..0b858ca8e0 100644 --- a/sequencer.c +++ b/sequencer.c @@ -2734,13 +2734,18 @@ static int rollback_is_safe(void) static int reset_merge(const struct object_id *oid) { - const char *argv[4]; /* reset --merge <arg> + NULL */ + int ret; + struct argv_array argv = ARGV_ARRAY_INIT; - argv[0] = "reset"; - argv[1] = "--merge"; - argv[2] = oid_to_hex(oid); - argv[3] = NULL; - return run_command_v_opt(argv, RUN_GIT_CMD); + argv_array_pushl(&argv, "reset", "--merge", NULL); + + if (!is_null_oid(oid)) + argv_array_push(&argv, oid_to_hex(oid)); + + ret = run_command_v_opt(argv.argv, RUN_GIT_CMD); + argv_array_clear(&argv); + + return ret; } static int rollback_single_pick(struct repository *r) |