All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Phillip Wood via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Phillip Wood <phillip.wood@dunelm.org.uk>,
	Phillip Wood <phillip.wood@dunelm.org.uk>
Subject: [PATCH 09/11] rebase: use our standard error return value
Date: Wed, 08 Sep 2021 09:49:20 +0000	[thread overview]
Message-ID: <f0644cde7252920abc831e7a81f33c85f17e818b.1631094563.git.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1033.git.1631094563.gitgitgadget@gmail.com>

From: Phillip Wood <phillip.wood@dunelm.org.uk>

Git uses −1 to signal an error. The builtin rebase converts these to
+1 all over the place using !! (presumably because the in the scripted
version an error was signalled by +1). This is confusing and clutters
the code, we only need to convert the value when the function returns.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
---
 builtin/rebase.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/builtin/rebase.c b/builtin/rebase.c
index 48ab7d9ae3b..e8c3c77bab0 100644
--- a/builtin/rebase.c
+++ b/builtin/rebase.c
@@ -1573,7 +1573,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 			die(_("could not move back to %s"),
 			    oid_to_hex(&options.orig_head));
 		remove_branch_state(the_repository, 0);
-		ret = !!finish_rebase(&options);
+		ret = finish_rebase(&options);
 		goto cleanup;
 	}
 	case ACTION_QUIT: {
@@ -1582,11 +1582,11 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 			struct replay_opts replay = REPLAY_OPTS_INIT;
 
 			replay.action = REPLAY_INTERACTIVE_REBASE;
-			ret = !!sequencer_remove_state(&replay);
+			ret = sequencer_remove_state(&replay);
 		} else {
 			strbuf_reset(&buf);
 			strbuf_addstr(&buf, options.state_dir);
-			ret = !!remove_dir_recursively(&buf, 0);
+			ret = remove_dir_recursively(&buf, 0);
 			if (ret)
 				error(_("could not remove '%s'"),
 				       options.state_dir);
@@ -1958,7 +1958,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 
 	if (require_clean_work_tree(the_repository, "rebase",
 				    _("Please commit or stash them."), 1, 1)) {
-		ret = 1;
+		ret = -1;
 		goto cleanup;
 	}
 
@@ -1993,7 +1993,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 					       RESET_HEAD_RUN_POST_CHECKOUT_HOOK,
 					       NULL, buf.buf,
 					       DEFAULT_REFLOG_ACTION) < 0) {
-					ret = !!error(_("could not switch to "
+					ret = error(_("could not switch to "
 							"%s"),
 						      options.switch_to);
 					goto cleanup;
@@ -2008,7 +2008,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 			else
 				printf(_("Current branch %s is up to date.\n"),
 				       branch_name);
-			ret = !!finish_rebase(&options);
+			ret = finish_rebase(&options);
 			goto cleanup;
 		} else if (!(options.flags & REBASE_NO_QUIET))
 			; /* be quiet */
@@ -2085,7 +2085,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 		reset_head(the_repository, NULL, "Fast-forwarded", options.head_name,
 			   RESET_HEAD_REFS_ONLY, "HEAD", buf.buf,
 			   DEFAULT_REFLOG_ACTION);
-		ret = !!finish_rebase(&options);
+		ret = finish_rebase(&options);
 		goto cleanup;
 	}
 
@@ -2099,7 +2099,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
 	options.revisions = revisions.buf;
 
 run_rebase:
-	ret = !!run_specific_rebase(&options, action);
+	ret = run_specific_rebase(&options, action);
 
 cleanup:
 	strbuf_release(&buf);
@@ -2110,5 +2110,5 @@ cleanup:
 	free(options.strategy);
 	strbuf_release(&options.git_format_patch_opt);
 	free(squash_onto_name);
-	return ret;
+	return !!ret;
 }
-- 
gitgitgadget


  parent reply	other threads:[~2021-09-08  9:49 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-08  9:49 [PATCH 00/11] rebase: dereference tags Phillip Wood via GitGitGadget
2021-09-08  9:49 ` [PATCH 01/11] t3407: run tests in $TEST_DIRECTORY Phillip Wood via GitGitGadget
2021-09-08 10:41   ` Ævar Arnfjörð Bjarmason
2021-09-08  9:49 ` [PATCH 02/11] t3407: use test_commit Phillip Wood via GitGitGadget
2021-09-08 10:39   ` Ævar Arnfjörð Bjarmason
2021-09-08  9:49 ` [PATCH 03/11] t3407: use test_cmp_rev Phillip Wood via GitGitGadget
2021-09-08 10:40   ` Ævar Arnfjörð Bjarmason
2021-09-08 13:42     ` Phillip Wood
2021-09-08  9:49 ` [PATCH 04/11] t3407: rename a variable Phillip Wood via GitGitGadget
2021-09-08  9:49 ` [PATCH 05/11] t3407: use test_path_is_missing Phillip Wood via GitGitGadget
2021-09-08  9:49 ` [PATCH 06/11] t3407: strengthen rebase --abort tests Phillip Wood via GitGitGadget
2021-09-08 10:42   ` Ævar Arnfjörð Bjarmason
2021-09-08  9:49 ` [PATCH 07/11] t3407: rework rebase --quit tests Phillip Wood via GitGitGadget
2021-09-08  9:49 ` [PATCH 08/11] rebase: remove redundant strbuf Phillip Wood via GitGitGadget
2021-09-09 10:35   ` Johannes Schindelin
2021-09-08  9:49 ` Phillip Wood via GitGitGadget [this message]
2021-09-08  9:49 ` [PATCH 10/11] rebase: use lookup_commit_reference_by_name() Phillip Wood via GitGitGadget
2021-09-08  9:49 ` [PATCH 11/11] rebase: dereference tags Phillip Wood via GitGitGadget
2021-09-08 10:45   ` Ævar Arnfjörð Bjarmason
2021-09-13 15:19 ` [PATCH v2 00/11] " Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 01/11] t3407: run tests in $TEST_DIRECTORY Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 02/11] t3407: use test_commit Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 03/11] t3407: use test_cmp_rev Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 04/11] t3407: rename a variable Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 05/11] t3407: use test_path_is_missing Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 06/11] t3407: strengthen rebase --abort tests Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 07/11] t3407: rework rebase --quit tests Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 08/11] rebase: remove redundant strbuf Phillip Wood via GitGitGadget
2021-09-13 18:34     ` René Scharfe
2021-09-13 22:40       ` Junio C Hamano
2021-09-14 10:31         ` Phillip Wood
2021-09-14 10:33       ` Phillip Wood
2021-09-13 15:19   ` [PATCH v2 09/11] rebase: use our standard error return value Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 10/11] rebase: use lookup_commit_reference_by_name() Phillip Wood via GitGitGadget
2021-09-13 15:19   ` [PATCH v2 11/11] rebase: dereference tags Phillip Wood via GitGitGadget
2021-09-13 22:58     ` Junio C Hamano
2021-09-14 10:17       ` Phillip Wood
2021-09-14 13:27         ` Phillip Wood
2021-09-14 16:29           ` Junio C Hamano
2021-09-14  3:42     ` Elijah Newren
2021-09-14  9:48     ` Sergey Organov
2021-09-14  9:58       ` Phillip Wood
2021-09-14  4:02   ` [PATCH v2 00/11] " Elijah Newren
2021-09-21 10:23   ` [PATCH v3 00/10] " Phillip Wood via GitGitGadget
2021-09-21 10:23     ` [PATCH v3 01/10] t3407: run tests in $TEST_DIRECTORY Phillip Wood via GitGitGadget
2021-09-21 10:23     ` [PATCH v3 02/10] t3407: use test_commit Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 03/10] t3407: use test_cmp_rev Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 04/10] t3407: rename a variable Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 05/10] t3407: use test_path_is_missing Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 06/10] t3407: strengthen rebase --abort tests Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 07/10] t3407: rework rebase --quit tests Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 08/10] rebase: use our standard error return value Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 09/10] rebase: use lookup_commit_reference_by_name() Phillip Wood via GitGitGadget
2021-09-21 10:24     ` [PATCH v3 10/10] rebase: dereference tags Phillip Wood via GitGitGadget
2021-09-24  1:26     ` [PATCH v3 00/10] " Elijah Newren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f0644cde7252920abc831e7a81f33c85f17e818b.1631094563.git.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=phillip.wood@dunelm.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.