From: Michael Lukashov Date: Wed, 17 Feb 2010 10:02:20 GMT Subject: Re: [PATCH v3 2/4] Refactoring: connect.c: move duplicated code to a new function 'get_host_and_port' Message-ID: <63cde7731002170202g78a47d20l62381a8bd61e65fd@mail.gmail.com> In-Reply-To: <20100217000456.GA28433@cthulhu> On Wed, Feb 17, 2010 at 3:04 AM, Larry D'Anna wrote: > * Michael Lukashov (michael.lukashov@gmail.com) [100216 18:43]: > >> @@ -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 = ""; >> -     } >> +     get_host_and_port(&host, &port); >> +     if (!*port) >> +             *port = ""; > > Again, isn't this wrong?  This doesn't even compile for me.  Shouldn't it be > > port = ""; > > ?? > > What am I missing? > >     --larry > Oops, my bad, sorry. Strange, my mingw-gcc 4.4.0 compiler didn't issue no errors or warnings. Weird indeed. I'll send repaired patch later.