mirror of
https://github.com/anope/anope.git
synced 2026-06-30 11:46:39 +02:00
Do not sync channels in Channel::Reset if they are in the middle of syncing, and checkmodes in Channel::Sync. Fixes channel modes sometimes not being set if always_lower_ts is on
This commit is contained in:
+5
-1
@@ -85,13 +85,17 @@ void Channel::Reset()
|
||||
for (ChanUserList::const_iterator it = this->users.begin(), it_end = this->users.end(); it != it_end; ++it)
|
||||
this->SetCorrectModes(it->second->user, true);
|
||||
|
||||
this->Sync();
|
||||
// If the channel is syncing now, do not force a sync due to Reset(), as we are probably iterating over users in Message::SJoin
|
||||
// A sync will come soon
|
||||
if (!syncing)
|
||||
this->Sync();
|
||||
}
|
||||
|
||||
void Channel::Sync()
|
||||
{
|
||||
syncing = false;
|
||||
FOREACH_MOD(OnChannelSync, (this));
|
||||
CheckModes();
|
||||
}
|
||||
|
||||
void Channel::CheckModes()
|
||||
|
||||
Reference in New Issue
Block a user