summaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/m_messageflood.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/modules/m_messageflood.cpp b/src/modules/m_messageflood.cpp
index 2b22d5e29..31099083d 100644
--- a/src/modules/m_messageflood.cpp
+++ b/src/modules/m_messageflood.cpp
@@ -51,7 +51,7 @@ struct MsgFloodData final
class MsgFloodSettings final
{
private:
- using CounterMap = insp::flat_map<User*, MsgFloodData>;
+ using CounterMap = insp::flat_map<std::string, MsgFloodData>;
CounterMap counters;
public:
@@ -71,7 +71,7 @@ public:
{
auto it = Find(who);
if (it == counters.end())
- it = counters.emplace(who, MsgFloodData(period)).first;
+ it = counters.emplace(who->uuid, MsgFloodData(period)).first;
it->second.messages += weight;
return (it->second.messages >= this->messages);
@@ -79,10 +79,9 @@ public:
void Clear(User* who)
{
- counters.erase(who);
+ counters.erase(who->uuid);
}
-
CounterMap::iterator Find(User* who)
{
auto found = false;
@@ -93,7 +92,7 @@ public:
it = counters.erase(it);
else
{
- if (it->first == who)
+ if (it->first == who->uuid)
{
found = true;
ret = it;