push: factor out the typical case
Only override dst on the odd case. This allows a preemptive break on the `simple` case. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Felipe Contreras committed
May 31, 2021 at 14:51 UTC
1f934725f7597366c981b72be6597124e2c21a77
1 file changed
+6
-5
builtin/push.c
+6
-5
@@ -231,14 +231,16 @@ static void setup_default_push_refspecs(struct remote *remote)
231
if (!branch)
232
die(_(message_detached_head_die), remote->name);
233
234
+ dst = branch->refname;
235
+
236
switch (push_default) {
237
default:
238
case PUSH_DEFAULT_UNSPECIFIED:
239
case PUSH_DEFAULT_SIMPLE:
238
- if (same_remote)
239
- if (strcmp(branch->refname, get_upstream_ref(branch, remote->name)))
240
- die_push_simple(branch, remote);
241
- dst = branch->refname;
240
+ if (!same_remote)
241
+ break;
242
+ if (strcmp(branch->refname, get_upstream_ref(branch, remote->name)))
243
+ die_push_simple(branch, remote);
244
break;
245
246
case PUSH_DEFAULT_UPSTREAM:
@@ -251,7 +253,6 @@ static void setup_default_push_refspecs(struct remote *remote)
253
break;
254
255
case PUSH_DEFAULT_CURRENT:
254
- dst = branch->refname;
256
break;
257
}
258