Re: [PATCH 1/2] GIT: Try all addresses for given remote name
From: YOSHIFUJI Hideaki / 吉藤英明 <hidden>
Date: 2016-06-15 22:42:02
In article [ref] (at Fri, 22 Jul 2005 23:09:13 +0200), Petr Baudis [off-list ref] says:
quoted
-} +#define STR_(s) # s +#define STR(s) STR_(s)Uh-huh? Why two macros? Well, why any macros at all?
:
quoted
+ char *colon, *end; + char *port = STR(DEFAULT_GIT_PORT); + struct addrinfo hints, *ai0, *ai;
The macro is used here.
This is trick.
After preprocess,
/* --- cut here --- */
#define TEST 12345
#define STR_(s) # s
#define STR(s) STR_(s)
test(STR(TEST));
test(STR_(TEST));
test(# TEST);
/* --- cut here --- */
becomes
test("12345");
test("TEST");
test(# 12345);
quoted
if (sockfd < 0) die("unable to create socket (%s)", strerror(errno)); - if (connect(sockfd, (void *)&addr, sizeof(addr)) < 0) - die("unable to connect (%s)", strerror(errno));
:
You are saying that you were unable to create socket while you just were unable to connect. Not any biggie, but it saves the user the trouble of one strace after being confused by an error message. :-)
In fact, I don't think it is really worng, because it says that it could not create (connected) socket or endpoint of connection. Anyway, I agree that it would be confusing. Better ideas / wordings? --yoshfuji