server/admin.c (a_listen): If stat(2) says the socket has gone, then retry.
[tripe] / server / admin.c
index acdb973..6ff1418 100644 (file)
@@ -2538,6 +2538,7 @@ again:
     if (errno != ECONNREFUSED)
       die(EXIT_FAILURE, "couldn't bind to address: %s", strerror(e));
     if (stat(sun.sun_path, &st)) {
+      if (errno == ENOENT) { close(fd); goto again; }
       die(EXIT_FAILURE, "couldn't stat `%s': %s",
          sun.sun_path, strerror(errno));
     }