From 74b5dabce28ef513118142ae1856fce1f53b5a95 Mon Sep 17 00:00:00 2001 From: brain Date: Thu, 31 Aug 2006 22:50:56 +0000 Subject: Made CountChannels faster. We use it in quite a few places. It's now O(1) rather than O(n) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5094 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/channels.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/channels.cpp') diff --git a/src/channels.cpp b/src/channels.cpp index f340e12bf..5c3bb266f 100644 --- a/src/channels.cpp +++ b/src/channels.cpp @@ -425,6 +425,7 @@ chanrec* chanrec::ForceChan(InspIRCd* Instance, chanrec* Ptr,ucrec *a,userrec* u a->channel = Ptr; Ptr->AddUser(user); + user->ModChannelCount(1); Ptr->WriteChannel(user,"JOIN :%s",Ptr->name); /* Major improvement by Brain - we dont need to be calculating all this pointlessly for remote users */ @@ -467,6 +468,7 @@ long chanrec::PartUser(userrec *user, const char* reason) } user->chans[i]->uc_modes = 0; user->chans[i]->channel = NULL; + user->ModChannelCount(-1); this->RemoveAllPrefixes(user); break; } -- cgit v1.3.1-10-gc9f91