diff options
author | Rich Coe <Richard.Coe@med.ge.com> | 2007-12-05 19:31:07 +0000 |
---|---|---|
committer | Daniel Stone <daniel@fooishbar.org> | 2007-12-05 19:31:07 +0000 |
commit | d8b2cad3771a09860e7be1726f67e684cf7caeec (patch) | |
tree | 05c4c218e6f5a1e5c41240b9e16be70bceadcbd5 /os | |
parent | a8e27a108abeba73b2888da4e0604008f4b02045 (diff) |
OS: Connection: Don't shut down disappeared clients (bug #7876)
If a client disappears in the middle of CheckConnections (presumably
because its appgroup leader disappears), then don't attempt to shut it down
a second time, when it's already vanished.
Diffstat (limited to 'os')
-rw-r--r-- | os/connection.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/os/connection.c b/os/connection.c index 860404f6c..6012a8e81 100644 --- a/os/connection.c +++ b/os/connection.c @@ -1059,7 +1059,8 @@ CheckConnections(void) FD_SET(curclient, &tmask); r = Select (curclient + 1, &tmask, NULL, NULL, ¬ime); if (r < 0) - CloseDownClient(clients[ConnectionTranslation[curclient]]); + if (ConnectionTranslation[curclient] > 0) + CloseDownClient(clients[ConnectionTranslation[curclient]]); mask &= ~((fd_mask)1 << curoff); } } |