This adds the ability for --edit-todo to check if commits were dropped
by the user using todo_list_check_against_backup().

Signed-off-by: Alban Gruin <alban.gr...@gmail.com>
---
 rebase-interactive.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/rebase-interactive.c b/rebase-interactive.c
index c7dea85553..c346d4ced4 100644
--- a/rebase-interactive.c
+++ b/rebase-interactive.c
@@ -95,6 +95,7 @@ int edit_todo_list(struct repository *r, struct todo_list 
*todo_list,
 {
        const char *todo_file = rebase_path_todo();
        unsigned initial = shortrevisions && shortonto;
+       int res = 0;
 
        /* If the user is editing the todo list, we first try to parse
         * it.  If there is an error, we do not return, because the user
@@ -119,10 +120,13 @@ int edit_todo_list(struct repository *r, struct todo_list 
*todo_list,
 
        /* For the initial edit, the todo list gets parsed in
         * complete_action(). */
-       if (!initial)
-               return todo_list_parse_insn_buffer(r, new_todo->buf.buf, 
new_todo);
+       if (!initial) {
+               res = todo_list_parse_insn_buffer(r, new_todo->buf.buf, 
new_todo);
+               if (!res)
+                       res = todo_list_check_against_backup(r, new_todo);
+       }
 
-       return 0;
+       return res;
 }
 
 define_commit_slab(commit_seen, unsigned char);
-- 
2.22.0

Reply via email to