mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-12 03:59:03 -04:00
Fixed the order of signon/signoff messages in m_watch (bug #410)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8023 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
parent
cff411663d
commit
639a462ea4
@ -416,22 +416,8 @@ class Modulewatch : public Module
|
|||||||
|
|
||||||
virtual void OnUserPostNick(userrec* user, const std::string &oldnick)
|
virtual void OnUserPostNick(userrec* user, const std::string &oldnick)
|
||||||
{
|
{
|
||||||
watchentries::iterator new_online = whos_watching_me->find(user->nick);
|
|
||||||
watchentries::iterator new_offline = whos_watching_me->find(assign(oldnick));
|
watchentries::iterator new_offline = whos_watching_me->find(assign(oldnick));
|
||||||
|
watchentries::iterator new_online = whos_watching_me->find(user->nick);
|
||||||
if (new_online != whos_watching_me->end())
|
|
||||||
{
|
|
||||||
for (std::deque<userrec*>::iterator n = new_online->second.begin(); n != new_online->second.end(); n++)
|
|
||||||
{
|
|
||||||
watchlist* wl;
|
|
||||||
if ((*n)->GetExt("watchlist", wl))
|
|
||||||
{
|
|
||||||
(*wl)[user->nick] = std::string(user->ident).append(" ").append(user->dhost).append(" ").append(ConvToStr(user->age));
|
|
||||||
if (!user->Visibility || user->Visibility->VisibleTo(user))
|
|
||||||
(*n)->WriteServ("600 %s %s %s :arrived online", (*n)->nick, user->nick, (*wl)[user->nick].c_str());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (new_offline != whos_watching_me->end())
|
if (new_offline != whos_watching_me->end())
|
||||||
{
|
{
|
||||||
@ -446,6 +432,20 @@ class Modulewatch : public Module
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (new_online != whos_watching_me->end())
|
||||||
|
{
|
||||||
|
for (std::deque<userrec*>::iterator n = new_online->second.begin(); n != new_online->second.end(); n++)
|
||||||
|
{
|
||||||
|
watchlist* wl;
|
||||||
|
if ((*n)->GetExt("watchlist", wl))
|
||||||
|
{
|
||||||
|
(*wl)[user->nick] = std::string(user->ident).append(" ").append(user->dhost).append(" ").append(ConvToStr(user->age));
|
||||||
|
if (!user->Visibility || user->Visibility->VisibleTo(user))
|
||||||
|
(*n)->WriteServ("600 %s %s %s :arrived online", (*n)->nick, user->nick, (*wl)[user->nick].c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void On005Numeric(std::string &output)
|
virtual void On005Numeric(std::string &output)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user