diff options
| author | 2013-04-18 13:25:28 +0200 | |
|---|---|---|
| committer | 2013-04-18 13:25:28 +0200 | |
| commit | 5ca81cf89a1d7cf78a2bb078a25305c1ebab8746 (patch) | |
| tree | c6d8344f69145f0d5786a5450bbb3f06506032bd /src/modules/m_callerid.cpp | |
| parent | m_callerid Fix bookkeeping error introduced when unserializing callerid_data (diff) | |
| download | inspircd++-5ca81cf89a1d7cf78a2bb078a25305c1ebab8746.tar.gz inspircd++-5ca81cf89a1d7cf78a2bb078a25305c1ebab8746.tar.bz2 inspircd++-5ca81cf89a1d7cf78a2bb078a25305c1ebab8746.zip | |
m_callerid Ignore duplicate entries when unserializing callerid_data
Diffstat (limited to 'src/modules/m_callerid.cpp')
| -rw-r--r-- | src/modules/m_callerid.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/modules/m_callerid.cpp b/src/modules/m_callerid.cpp index 812df1da0..b0d6b9c64 100644 --- a/src/modules/m_callerid.cpp +++ b/src/modules/m_callerid.cpp @@ -82,9 +82,11 @@ struct CallerIDExtInfo : public ExtensionItem User *u = ServerInstance->FindNick(tok); if ((u) && (u->registered == REG_ALL) && (!u->quitting) && (!IS_SERVER(u))) { - callerid_data* other = this->get(u, true); - other->wholistsme.push_back(dat); - dat->accepting.insert(u); + if (dat->accepting.insert(u).second) + { + callerid_data* other = this->get(u, true); + other->wholistsme.push_back(dat); + } } } |
