diff --git a/server.c b/server.c index da22af2a..34b14826 100644 --- a/server.c +++ b/server.c @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.177 2009-08-31 22:30:15 tcunha Exp $ */ +/* $Id: server.c,v 1.178 2009-09-02 21:36:00 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -205,8 +205,8 @@ error: server_write_error(c, cause); xfree(cause); + sigterm = 1; server_shutdown(); - c->flags |= CLIENT_BAD; exit(server_main(srv_fd)); } @@ -307,7 +307,7 @@ server_main(int srv_fd) /* Update socket permissions. */ xtimeout = INFTIM; - if (sigterm || server_update_socket() != 0) + if (server_update_socket() != 0) xtimeout = POLL_TIMEOUT; /* Do the poll. */ @@ -423,7 +423,6 @@ server_shutdown(void) server_lost_client(c); else server_write_client(c, MSG_SHUTDOWN, NULL, 0); - c->flags |= CLIENT_BAD; } } }