]> git.ipfire.org Git - thirdparty/git.git/blobdiff - sequencer.c
sequencer (rebase -i): allow rescheduling commands
[thirdparty/git.git] / sequencer.c
index 04a64cf0dc00e291b9b4a32054c6aedd1aa6027a..dd5b843a841f6c46bcd44cf5d7a7aa5152fbfef4 100644 (file)
@@ -1915,6 +1915,12 @@ static int pick_commits(struct todo_list *todo_list, struct replay_opts *opts)
                                        1);
                        res = do_pick_commit(item->command, item->commit,
                                        opts, is_final_fixup(todo_list));
+                       if (is_rebase_i(opts) && res < 0) {
+                               /* Reschedule */
+                               todo_list->current--;
+                               if (save_todo(todo_list, opts))
+                                       return -1;
+                       }
                        if (item->command == TODO_EDIT) {
                                struct commit *commit = item->commit;
                                if (!res)