mirror of
https://github.com/git/git.git
synced 2025-01-25 00:43:41 +08:00
sequencer: use edit_todo_list() in complete_action()
This changes complete_action() to use edit_todo_list(), now that it can handle the initial edit of the todo list. Signed-off-by: Alban Gruin <alban.gruin@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a930eb03a8
commit
1451d0f616
21
sequencer.c
21
sequencer.c
@ -4746,6 +4746,7 @@ int complete_action(struct repository *r, struct replay_opts *opts, unsigned fla
|
||||
struct todo_list new_todo = TODO_LIST_INIT;
|
||||
struct strbuf *buf = &todo_list->buf;
|
||||
struct object_id oid;
|
||||
int res;
|
||||
|
||||
get_oid(onto, &oid);
|
||||
shortonto = find_unique_abbrev(&oid, DEFAULT_ABBREV);
|
||||
@ -4770,24 +4771,16 @@ int complete_action(struct repository *r, struct replay_opts *opts, unsigned fla
|
||||
return error(_("nothing to do"));
|
||||
}
|
||||
|
||||
if (todo_list_write_to_file(r, todo_list, todo_file,
|
||||
shortrevisions, shortonto, -1,
|
||||
flags | TODO_LIST_SHORTEN_IDS | TODO_LIST_APPEND_TODO_HELP))
|
||||
return error_errno(_("could not write '%s'"), todo_file);
|
||||
|
||||
if (copy_file(rebase_path_todo_backup(), todo_file, 0666))
|
||||
return error(_("could not copy '%s' to '%s'."), todo_file,
|
||||
rebase_path_todo_backup());
|
||||
|
||||
if (launch_sequence_editor(todo_file, &new_todo.buf, NULL)) {
|
||||
res = edit_todo_list(r, todo_list, &new_todo, shortrevisions,
|
||||
shortonto, flags);
|
||||
if (res == -1)
|
||||
return -1;
|
||||
else if (res == -2) {
|
||||
apply_autostash(opts);
|
||||
sequencer_remove_state(opts);
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
strbuf_stripspace(&new_todo.buf, 1);
|
||||
if (new_todo.buf.len == 0) {
|
||||
} else if (res == -3) {
|
||||
apply_autostash(opts);
|
||||
sequencer_remove_state(opts);
|
||||
todo_list_release(&new_todo);
|
||||
|
Loading…
Reference in New Issue
Block a user