mirror of
https://github.com/anope/anope.git
synced 2026-06-30 02:56:38 +02:00
Bug #1287 - Only check if users should be deopped on syncing channels
when the user is on a server that is also syncing. This prevents us from deopping all users who join a new channel when recovering from a netsplit that don't explicitly have access to that channel.
This commit is contained in:
+1
-1
@@ -1100,7 +1100,7 @@ void chan_set_correct_modes(User *user, Channel *c, int give_modes)
|
||||
c->SetMode(NULL, CMODE_VOICE, user->nick);
|
||||
}
|
||||
/* If this channel has secureops or the channel is syncing and they are not ulined, check to remove modes */
|
||||
if ((ci->HasFlag(CI_SECUREOPS) || c->HasFlag(CH_SYNCING)) && !user->server->IsULined())
|
||||
if ((ci->HasFlag(CI_SECUREOPS) || (c->HasFlag(CH_SYNCING) && user->server->IsSynced())) && !user->server->IsULined())
|
||||
{
|
||||
if (owner && c->HasUserStatus(user, CMODE_OWNER) && !check_access(user, ci, CA_FOUNDER))
|
||||
c->RemoveMode(NULL, CMODE_OWNER, user->nick);
|
||||
|
||||
Reference in New Issue
Block a user