2 # Parent aaa3a5dc576b78c7da4518c794f81a738fb0edd0
4 diff -r aaa3a5dc576b ircd/channel.c
5 --- a/ircd/channel.c Wed Jul 17 21:18:06 2013 +0100
6 +++ b/ircd/channel.c Wed Jul 17 21:20:09 2013 +0100
8 RevealDelayedJoin(member);
12 + /* +X user can always speak on the channel */
13 + if (IsXtraOp(member->user)) {
14 + if (IsDelayedJoin(member) && reveal)
15 + RevealDelayedJoin(member);
19 /* Discourage using the Apass to get op. They should use the Upass. */
20 if (IsChannelManager(member) && member->channel->mode.apass[0])
23 * Servers can always speak on channels.
25 - if (IsServer(cptr) || IsXtraOp(cptr))
29 member = find_channel_member(cptr, chptr);
34 - if ((chptr->mode.mode & (MODE_NOPRIVMSGS|MODE_MODERATED)) ||
37 + else if ((chptr->mode.mode & (MODE_NOPRIVMSGS|MODE_MODERATED)) ||
38 ((chptr->mode.mode & (MODE_REGONLY|MODE_MODERATENOREG)) && !IsAccount(cptr)))