summary refs log tree commit diff
path: root/branch.c
diff options
context:
space:
mode:
authorGlen Choo <chooglen@google.com>2022-03-31 15:41:18 -0700
committerJunio C Hamano <gitster@pobox.com>2022-03-31 15:52:53 -0700
commit6696601241d27cf7b2834b92788a73a6f4af2e89 (patch)
treeef2796cf3403177fcff75b69732228562255789a /branch.c
parent1f888282e2914283890f61000a7589d32b4132bc (diff)
branch.c: simplify advice-and-die sequence
In the dwim_branch_start(), when we cannot find an appropriate
upstream, we will die with the same message anyway, whether we
issue an advice message.

Flip the code around a bit and simplify the flow using
advise_if_enabled() function.

Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Glen Choo <chooglen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'branch.c')
-rw-r--r--branch.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/branch.c b/branch.c
index 8ee9f43539..b673143cbe 100644
--- a/branch.c
+++ b/branch.c
@@ -383,13 +383,10 @@ static void dwim_branch_start(struct repository *r, const char *start_name,
 	real_ref = NULL;
 	if (get_oid_mb(start_name, &oid)) {
 		if (explicit_tracking) {
-			if (advice_enabled(ADVICE_SET_UPSTREAM_FAILURE)) {
-				int code = die_message(_(upstream_missing),
-						       start_name);
-				advise(_(upstream_advice));
-				exit(code);
-			}
-			die(_(upstream_missing), start_name);
+			int code = die_message(_(upstream_missing), start_name);
+			advise_if_enabled(ADVICE_SET_UPSTREAM_FAILURE,
+					  _(upstream_advice));
+			exit(code);
 		}
 		die(_("Not a valid object name: '%s'."), start_name);
 	}