diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-04-04 14:05:07 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-04-04 14:05:07 +0000 |
commit | 463979eb86f2f626a0a6c7b0b9742a86b35c7faa (patch) | |
tree | 2fee785574c32238409da2ca721951f2f75cc5e9 /src/modules/m_spanningtree | |
parent | f7a28a7800d934b3bcd630a97bb6471eb1007140 (diff) |
Server origin PRIVMSG and NOTICE now supported by protocol. Will add interface after i've shredded a load of paper >:)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9307 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_spanningtree')
-rw-r--r-- | src/modules/m_spanningtree/main.cpp | 8 | ||||
-rw-r--r-- | src/modules/m_spanningtree/privmsg.cpp | 3 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp index 426cf114a..afc05bdbc 100644 --- a/src/modules/m_spanningtree/main.cpp +++ b/src/modules/m_spanningtree/main.cpp @@ -453,6 +453,10 @@ void ModuleSpanningTree::OnWallops(User* user, const std::string &text) void ModuleSpanningTree::OnUserNotice(User* user, void* dest, int target_type, const std::string &text, char status, const CUList &exempt_list) { + /* Server origin */ + if (user == NULL) + return; + if (target_type == TYPE_USER) { User* d = (User*)dest; @@ -501,6 +505,10 @@ void ModuleSpanningTree::OnUserNotice(User* user, void* dest, int target_type, c void ModuleSpanningTree::OnUserMessage(User* user, void* dest, int target_type, const std::string &text, char status, const CUList &exempt_list) { + /* Server origin */ + if (user == NULL) + return; + if (target_type == TYPE_USER) { // route private messages which are targetted at clients only to the server diff --git a/src/modules/m_spanningtree/privmsg.cpp b/src/modules/m_spanningtree/privmsg.cpp index b73ba15fb..6c4c8935e 100644 --- a/src/modules/m_spanningtree/privmsg.cpp +++ b/src/modules/m_spanningtree/privmsg.cpp @@ -50,7 +50,8 @@ bool TreeSocket::ServerMessage(const std::string &messagetype, const std::string { FOREACH_MOD_I(Instance, I_OnUserNotice, OnUserNotice(NULL, channel, TYPE_SERVER, text, status, except_list)); } - channel->WriteChannelWithServ(prefix.c_str(), "%s %s :%s", messagetype.c_str(), channel->name, text.c_str()); + TreeServer* s = Utils->FindServer(prefix); + channel->WriteChannelWithServ(s->GetName().c_str(), "%s %s :%s", messagetype.c_str(), channel->name, text.c_str()); } /* Propogate as channel privmsg */ |