aboutsummaryrefslogtreecommitdiffstats
path: root/src/channels.cpp
diff options
context:
space:
mode:
authorGravatar Daniel De Graaf2010-04-13 12:47:42 -0500
committerGravatar Daniel De Graaf2010-08-03 17:32:42 -0400
commitc1a07677db2bb0b023d5eb3565353cb0843eefbf (patch)
tree5d2bae34ba9d411ce19e9179498d289b1d2c468d /src/channels.cpp
parentFix "foo" < "foobar" comparison in irc::string (diff)
Change UserChanList to an intrusive-style linked list
Diffstat (limited to 'src/channels.cpp')
-rw-r--r--src/channels.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/channels.cpp b/src/channels.cpp
index d8ed730e9..362d16583 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -363,7 +363,7 @@ Channel* Channel::ForceChan(Channel* Ptr, User* user, const std::string &privs,
std::string nick = user->nick;
Membership* memb = Ptr->AddUser(user);
- user->chans.insert(Ptr);
+ user->chans.insert(memb);
for (std::string::const_iterator x = privs.begin(); x != privs.end(); x++)
{
@@ -498,7 +498,7 @@ void Channel::PartUser(User *user, std::string &reason)
WriteAllExcept(user, false, 0, except_list, "PART %s%s%s", this->name.c_str(), reason.empty() ? "" : " :", reason.c_str());
- user->chans.erase(this);
+ user->chans.erase(memb);
this->RemoveAllPrefixes(user);
}
@@ -556,7 +556,7 @@ void Channel::KickUser(User *src, User *user, const char* reason)
WriteAllExcept(src, false, 0, except_list, "KICK %s %s :%s", name.c_str(), user->nick.c_str(), reason);
- user->chans.erase(this);
+ user->chans.erase(memb);
this->RemoveAllPrefixes(user);
}