summaryrefslogtreecommitdiff
path: root/src/channels.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/channels.c')
-rw-r--r--src/channels.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/channels.c b/src/channels.c
index 9e32629e3..ebee50403 100644
--- a/src/channels.c
+++ b/src/channels.c
@@ -143,8 +143,7 @@ int chan_has_user_status(Channel * chan, User * user, int16 status)
for (uc = user->chans; uc; uc = uc->next) {
if (uc->chan == chan) {
if (debug) {
- alog("chan_has_user_status wanted %d the user is %d",
- status, uc->status);
+ alog("debug: chan_has_user_status wanted %d the user is %d", status, uc->status);
}
return (uc->status & status);
}
@@ -874,6 +873,8 @@ void chan_adduser2(User * user, Channel * c)
chan_set_user_status(c, user, CUS_OWNER | CUS_OP);
} else if (ircd->protect && check_should_protect(user, chan)) {
chan_set_user_status(c, user, CUS_PROTECT | CUS_OP);
+ } else if (ircd->admin && check_should_protect(user, chan)) {
+ chan_set_user_status(c, user, CUS_PROTECT | CUS_OP);
} else if (check_should_op(user, chan)) {
chan_set_user_status(c, user, CUS_OP);
} else if (ircd->halfop && check_should_halfop(user, chan)) {