diff options
Diffstat (limited to 'src/chanserv.c')
| -rw-r--r-- | src/chanserv.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/chanserv.c b/src/chanserv.c index 5c70edfb9..da9928aeb 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -1202,8 +1202,12 @@ void check_modes(Channel * c) end--; modes = 0; - if (ci) + if (ci) { modes = c->mode & ci->mlock_off; + /* Make sure we don't remove a mode just set by defcon.. ~ Viper */ + if (DefConModesSet) + modes &= ~(modes & DefConModesOn); + } if (DefConModesSet) modes |= c->mode & DefConModesOff; |
