Re: [PATCH v3 2/4] Refactoring: connect.c: move duplicated code to a new function 'get_host_and_port'
- From
Michael Lukashov <michael.lukashov@gmail.com>
- Date
- Feb 17, 2010, 10:02 UTC
- Message-ID
- <63cde7731002170202g78a47d20l62381a8bd61e65fd@mail.gmail.com>
- In-Reply-To
- <20100217000456.GA28433@cthulhu>
On Wed, Feb 17, 2010 at 3:04 AM, Larry D'Anna <larry@elder-gods.org> wrote:
Show 44 quoted lines
> * 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 = "<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
>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.