From a14c7ab8f58f3b2aea99e65a74c9f9ab4f955a40 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 28 Jun 2015 21:13:24 -0700 Subject: rerere: report autoupdated paths only after actually updating them Signed-off-by: Junio C Hamano --- rerere.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'rerere.c') diff --git a/rerere.c b/rerere.c index d8518a450f..7fa58cc8b2 100644 --- a/rerere.c +++ b/rerere.c @@ -482,6 +482,8 @@ static void update_paths(struct string_list *update) struct string_list_item *item = &update->items[i]; if (add_file_to_cache(item->string, 0)) exit(128); + fprintf(stderr, "Staged '%s' using previous resolution.\n", + item->string); } if (active_cache_changed) { @@ -536,16 +538,16 @@ static int do_plain_rerere(struct string_list *rr, int fd) const char *name = (const char *)rr->items[i].util; if (has_rerere_resolution(name)) { - if (!merge(name, path)) { - const char *msg; - if (rerere_autoupdate) { - string_list_insert(&update, path); - msg = "Staged '%s' using previous resolution.\n"; - } else - msg = "Resolved '%s' using previous resolution.\n"; - fprintf(stderr, msg, path); - goto mark_resolved; - } + if (merge(name, path)) + continue; + + if (rerere_autoupdate) + string_list_insert(&update, path); + else + fprintf(stderr, + "Resolved '%s' using previous resolution.\n", + path); + goto mark_resolved; } /* Let's see if we have resolved it. */ -- cgit v1.2.3