Fix ?: statements.

Omitting the first branch in ?: is a GNU extension.  Cute,
but not supported by other compilers.  Replaced mostly
by explicit tests.  Calls to getenv() simply are repeated
on non-GNU compilers.

Signed-off-by: Jason Riedy <ejr@cs.berkeley.edu>
diff --git a/connect.c b/connect.c
index a6657b1..c0bf869 100644
--- a/connect.c
+++ b/connect.c
@@ -383,8 +383,10 @@
 		close(pipefd[1][0]);
 		close(pipefd[1][1]);
 		if (protocol == PROTO_SSH) {
-			const char *ssh = getenv("GIT_SSH") ? : "ssh";
-			const char *ssh_basename = strrchr(ssh, '/');
+			const char *ssh, *ssh_basename;
+			ssh = getenv("GIT_SSH");
+			if (!ssh) ssh = "ssh";
+			ssh_basename = strrchr(ssh, '/');
 			if (!ssh_basename)
 				ssh_basename = ssh;
 			else