]>
Commit | Line | Data |
---|---|---|
1 | # HG changeset patch | |
2 | # Parent 2e0790d057c43ba2d7baffb90ac98424530e36b0 | |
3 | ||
4 | diff -r 2e0790d057c4 ircd/channel.c | |
5 | --- a/ircd/channel.c Fri Jul 19 21:25:37 2013 +0100 | |
6 | +++ b/ircd/channel.c Fri Jul 19 21:28:53 2013 +0100 | |
7 | @@ -3016,10 +3016,14 @@ | |
8 | count--; | |
9 | len -= banlen; | |
10 | } else { | |
11 | + /* we allow opmode to override both the average? length check | |
12 | + * and the maximum amount of bans | |
13 | + */ | |
14 | if (state->flags & MODE_PARSE_SET && MyUser(state->sptr) && | |
15 | !(state->mbuf->mb_dest & MODEBUF_DEST_OPMODE) && | |
16 | (len > (feature_int(FEAT_AVBANLEN) * feature_int(FEAT_MAXBANS)) || | |
17 | - count > feature_int(FEAT_MAXBANS))) { | |
18 | + count > feature_int(FEAT_MAXBANS)) && | |
19 | + ((state->mbuf == NULL) || !(state->mbuf->mb_dest & MODEBUF_DEST_OPMODE))) { | |
20 | send_reply(state->sptr, ERR_BANLISTFULL, state->chptr->chname, | |
21 | ban->banstr); | |
22 | count--; |