[RFC/PATCH 02/18] revert: change many die() calls into "return error()" calls
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
builtin/revert.c | 43 ++++++++++++++++++++++---------------------
1 files changed, 22 insertions(+), 21 deletions(-)
diff --git a/builtin/revert.c b/builtin/revert.c
index bb6e9e8..9649d37 100644
--- a/builtin/revert.c
+++ b/builtin/revert.c
@@ -280,16 +280,18 @@ static struct tree *empty_tree(void)
return tree;
}
-static NORETURN void die_dirty_index(const char *me)
+static int error_dirty_index(const char *me)
{
if (read_cache_unmerged()) {
- die_resolve_conflict(me);
+ return error_resolve_conflict(me);
} else {
if (advice_commit_before_merge)
- die("Your local changes would be overwritten by %s.\n"
- "Please, commit your changes or stash them to proceed.", me);
+ return error("Your local changes would be overwritten "
+ "by %s.\nPlease, commit your changes or "
+ "stash them to proceed.", me);
else
- die("Your local changes would be overwritten by %s.\n", me);
+ return error("Your local changes would be overwritten "
+ "by %s.\n", me);
}
}
@@ -339,7 +341,7 @@ static int do_recursive_merge(struct commit *base, struct commit *next,
if (active_cache_changed &&
(write_cache(index_fd, active_cache, active_nr) ||
commit_locked_index(&index_lock)))
- die("%s: Unable to write new index file", me);
+ return error("%s: Unable to write new index file", me);
rollback_lock_file(&index_lock);
if (!clean) {
@@ -405,18 +407,18 @@ static int do_pick_commit(void)
* to work on.
*/
if (write_cache_as_tree(head, 0, NULL))
- die ("Your index file is unmerged.");
+ return error("Your index file is unmerged.");
} else {
if (get_sha1("HEAD", head))
- die ("You do not have a valid HEAD");
+ return error("You do not have a valid HEAD");
if (index_differs_from("HEAD", 0))
- die_dirty_index(me);
+ return error_dirty_index(me);
}
discard_cache();
if (!commit->parents) {
if (action == REVERT)
- die ("Cannot revert a root commit");
+ return error("Cannot revert a root commit");
parent = NULL;
}
else if (commit->parents->next) {
@@ -425,20 +427,19 @@ static int do_pick_commit(void)
struct commit_list *p;
if (!mainline)
- die("Commit %s is a merge but no -m option was given.",
- sha1_to_hex(commit->object.sha1));
-
+ return error("Commit %s is a merge but no -m option "
+ "was given.", sha1_to_hex(commit->object.sha1));
for (cnt = 1, p = commit->parents;
cnt != mainline && p;
cnt++)
p = p->next;
if (cnt != mainline || !p)
- die("Commit %s does not have parent %d",
- sha1_to_hex(commit->object.sha1), mainline);
+ return error("Commit %s does not have parent %d",
+ sha1_to_hex(commit->object.sha1), mainline);
parent = p->item;
} else if (0 < mainline)
- die("Mainline was specified but commit %s is not a merge.",
- sha1_to_hex(commit->object.sha1));
+ return error("Mainline was specified but commit %s is not a merge.",
+ sha1_to_hex(commit->object.sha1));
else
parent = commit->parents->item;
@@ -446,12 +447,12 @@ static int do_pick_commit(void)
return fast_forward_to(commit->object.sha1, head);
if (parent && parse_commit(parent) < 0)
- die("%s: cannot parse parent commit %s",
- me, sha1_to_hex(parent->object.sha1));
+ return error("%s: cannot parse parent commit %s",
+ me, sha1_to_hex(parent->object.sha1));
if (get_message(commit->buffer, &msg) != 0)
- die("Cannot get commit message for %s",
- sha1_to_hex(commit->object.sha1));
+ return error("Cannot get commit message for %s",
+ sha1_to_hex(commit->object.sha1));
/*
* "commit" is an existing commit. We would want to apply
--
1.7.3.2.504.g59d466