aboutsummaryrefslogtreecommitdiff
path: root/cmd-detach-client.c
diff options
context:
space:
mode:
Diffstat (limited to 'cmd-detach-client.c')
-rw-r--r--cmd-detach-client.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/cmd-detach-client.c b/cmd-detach-client.c
index f7369df0..d8128eae 100644
--- a/cmd-detach-client.c
+++ b/cmd-detach-client.c
@@ -72,9 +72,8 @@ cmd_detach_client_exec(struct cmd *self, struct cmd_q *cmdq)
return (CMD_RETURN_ERROR);
TAILQ_FOREACH(cloop, &clients, entry) {
- if (cloop->session != s)
- continue;
- proc_send_s(cloop->peer, msgtype, cloop->session->name);
+ if (cloop->session == s)
+ server_client_detach(cloop, msgtype);
}
return (CMD_RETURN_STOP);
}
@@ -85,13 +84,12 @@ cmd_detach_client_exec(struct cmd *self, struct cmd_q *cmdq)
if (args_has(args, 'a')) {
TAILQ_FOREACH(cloop, &clients, entry) {
- if (cloop->session == NULL || cloop == c)
- continue;
- proc_send_s(cloop->peer, msgtype, cloop->session->name);
+ if (cloop->session != NULL && cloop != c)
+ server_client_detach(cloop, msgtype);
}
return (CMD_RETURN_NORMAL);
}
- proc_send_s(c->peer, msgtype, c->session->name);
+ server_client_detach(c, msgtype);
return (CMD_RETURN_STOP);
}