mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-12 03:59:03 -04:00
Backport: Fix for bug found by eLement, when an oper is on a notify list and the oper sets +Q, then the watch list for that user goes into an undefined state
due to the metadata not being correctly cleared from the user in m_watch OnUserQuit. Thanks :) git-svn-id: http://svn.inspircd.org/repository/branches/1_1_stable@8753 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
parent
c3b2acc838
commit
5799b2f9e5
@ -98,6 +98,10 @@ class cmd_watch : public command_t
|
||||
{
|
||||
/* Yup, is on my list */
|
||||
watchlist::iterator n = wl->find(nick);
|
||||
|
||||
if (!wl)
|
||||
return CMD_FAILURE;
|
||||
|
||||
if (n != wl->end())
|
||||
{
|
||||
if (!n->second.empty())
|
||||
@ -370,6 +374,7 @@ class Modulewatch : public Module
|
||||
|
||||
/* User's quitting, we're done with this. */
|
||||
delete wl;
|
||||
user->Shrink("watchlist");
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user