Skip to content

Commit 37ee646

Browse files
bk2204gitster
authored andcommitted
connect: simplify SSH connection code path
The code path used in git_connect pushed the majority of the SSH connection code into an else block, even though the if block returns. Simplify the code by eliminating the else block, as it is unneeded. Signed-off-by: Jeff King <[email protected]> Signed-off-by: brian m. carlson <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 8c2ea51 commit 37ee646

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

connect.c

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -740,28 +740,28 @@ struct child_process *git_connect(int fd[2], const char *url,
740740
free(hostandport);
741741
free(path);
742742
return NULL;
743+
}
744+
745+
ssh = getenv("GIT_SSH_COMMAND");
746+
if (ssh) {
747+
conn->use_shell = 1;
748+
putty = 0;
743749
} else {
744-
ssh = getenv("GIT_SSH_COMMAND");
745-
if (ssh) {
746-
conn->use_shell = 1;
747-
putty = 0;
748-
} else {
749-
ssh = getenv("GIT_SSH");
750-
if (!ssh)
751-
ssh = "ssh";
752-
putty = !!strcasestr(ssh, "plink");
753-
}
754-
755-
argv_array_push(&conn->args, ssh);
756-
if (putty && !strcasestr(ssh, "tortoiseplink"))
757-
argv_array_push(&conn->args, "-batch");
758-
if (port) {
759-
/* P is for PuTTY, p is for OpenSSH */
760-
argv_array_push(&conn->args, putty ? "-P" : "-p");
761-
argv_array_push(&conn->args, port);
762-
}
763-
argv_array_push(&conn->args, ssh_host);
750+
ssh = getenv("GIT_SSH");
751+
if (!ssh)
752+
ssh = "ssh";
753+
putty = !!strcasestr(ssh, "plink");
754+
}
755+
756+
argv_array_push(&conn->args, ssh);
757+
if (putty && !strcasestr(ssh, "tortoiseplink"))
758+
argv_array_push(&conn->args, "-batch");
759+
if (port) {
760+
/* P is for PuTTY, p is for OpenSSH */
761+
argv_array_push(&conn->args, putty ? "-P" : "-p");
762+
argv_array_push(&conn->args, port);
764763
}
764+
argv_array_push(&conn->args, ssh_host);
765765
} else {
766766
/* remove repo-local variables from the environment */
767767
conn->env = local_repo_env;

0 commit comments

Comments
 (0)