Carlo Marcelo Arenas Belón [off-list ref] writes:
quoted hunk
@@ -75,7 +101,7 @@ static void do_cache(const char *socket, const char *action, int timeout,
}
if (send_request(socket, &buf) < 0) {
- if (errno != ENOENT && errno != ECONNREFUSED)
+ if (connection_fatally_broken(errno))
die_errno("unable to connect to cache daemon");
if (flags & FLAG_SPAWN) {
spawn_daemon(socket);
In my earlier review I suggested a helper that checks
recoverability, hence leading to a code structure like this:
if (!connection_not_yet_open(errno))
die_errno(...);
/* otherwise, (re)establish connection and retry */
...
but the phrasing and semantics you chose to check for unrecoverable
state reads much better.
Thanks.