summaryrefslogtreecommitdiff
path: root/src/channels.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/channels.cpp')
-rw-r--r--src/channels.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/channels.cpp b/src/channels.cpp
index e7564c3ea..345ec79dd 100644
--- a/src/channels.cpp
+++ b/src/channels.cpp
@@ -450,7 +450,6 @@ chanrec* chanrec::ForceChan(InspIRCd* Instance, chanrec* Ptr,ucrec *a,userrec* u
user->WriteServ("333 %s %s %s %lu", user->nick, Ptr->name, Ptr->setby, (unsigned long)Ptr->topicset);
}
Ptr->UserList(user);
- user->WriteServ("366 %s %s :End of /NAMES list.", user->nick, Ptr->name);
}
FOREACH_MOD_I(Instance,I_OnUserJoin,OnUserJoin(user,Ptr));
return Ptr;
@@ -811,6 +810,14 @@ void chanrec::UserList(userrec *user)
{
char list[MAXBUF];
size_t dlen, curlen;
+ int MOD_RESULT = 0;
+
+ FOREACH_RESULT(I_OnUserList,OnUserList(user, this));
+ ServerInstance->Log(DEBUG,"MOD_RESULT for UserList = %d",MOD_RESULT);
+ if (MOD_RESULT == 1)
+ return;
+
+ ServerInstance->Log(DEBUG,"Using builtin NAMES list generation");
dlen = curlen = snprintf(list,MAXBUF,"353 %s = %s :", user->nick, this->name);
@@ -861,6 +868,8 @@ void chanrec::UserList(userrec *user)
{
user->WriteServ(list);
}
+
+ user->WriteServ("366 %s %s :End of /NAMES list.", user->nick, this->name);
}
long chanrec::GetMaxBans()