diff options
-rw-r--r-- | src/mds-server.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mds-server.c b/src/mds-server.c index 7bd79df..0dc6106 100644 --- a/src/mds-server.c +++ b/src/mds-server.c @@ -1054,6 +1054,11 @@ void multicast_message(char* message, size_t length) size_t sent; n = length; + /* Skip if the client has closed. */ + if (client->open == 0) + continue; + + /* Send the message. */ with_mutex(client->mutex, while (n > 0) { @@ -1068,6 +1073,7 @@ void multicast_message(char* message, size_t length) } ); + /* Wait for a reply. */ if ((n > 0) && client_.modifying) { /* TODO */ |