Re: [PATCH v3 2/4] Refactoring: connect.c: move duplicated code to a new function 'get_host_and_port'
* Michael Lukashov (michael.lukashov@gmail.com) [100216 18:43]:
Show 31 quoted lines
> @@ -170,30 +192,14 @@ static const char *ai_name(const struct addrinfo *ai)
> static int git_tcp_connect_sock(char *host, int flags)
> {
> int sockfd = -1, saved_errno = 0;
> - char *colon, *end;
> const char *port = STR(DEFAULT_GIT_PORT);
> struct addrinfo hints, *ai0, *ai;
> int gai;
> int cnt = 0;
>
> - if (host[0] == '[') {
> - end = strchr(host + 1, ']');
> - if (end) {
> - *end = 0;
> - end++;
> - host++;
> - } else
> - end = host;
> - } else
> - end = host;
> - colon = strchr(end, ':');
> -
> - if (colon) {
> - *colon = 0;
> - port = colon + 1;
> - if (!*port)
> - port = "<none>";
> - }
> + get_host_and_port(&host, &port);
> + if (!*port)
> + *port = "<none>";Again, isn't this wrong? This doesn't even compile for me. Shouldn't it be
port = "<none>";
??
What am I missing?
--larry