diff options
author | danieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7> | 2009-05-13 17:04:25 +0000 |
---|---|---|
committer | danieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7> | 2009-05-13 17:04:25 +0000 |
commit | 46ecb9252891c472c1f34fb6a2b5fb7ffeef3793 (patch) | |
tree | 7080cfd57e3f24716c9f0537fe1339b1b77897db | |
parent | 97c0e6b4c4e304a1c4e764fc06a7e2663a41743d (diff) |
Show correct server source to users on FTOPIC and FMODE
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11380 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/mode.cpp | 2 | ||||
-rw-r--r-- | src/modules/m_spanningtree/ftopic.cpp | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/mode.cpp b/src/mode.cpp index 625474cce..39f5f1da2 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -766,7 +766,7 @@ void ModeParser::Process(const std::vector<std::string>& parameters, User *user, if (!output_sequence.empty()) { LastParseParams.push_front(output_sequence); - if (servermode) + if (!user) { if (type == MODETYPE_CHANNEL) { diff --git a/src/modules/m_spanningtree/ftopic.cpp b/src/modules/m_spanningtree/ftopic.cpp index 8f330cd1c..99816e64a 100644 --- a/src/modules/m_spanningtree/ftopic.cpp +++ b/src/modules/m_spanningtree/ftopic.cpp @@ -39,7 +39,8 @@ bool TreeSocket::ForceTopic(const std::string &source, std::deque<std::string> & c->topic.assign(params[3], 0, ServerInstance->Config->Limits.MaxTopic); if (!user) { - c->WriteChannelWithServ(ServerInstance->Config->ServerName, "TOPIC %s :%s", c->name.c_str(), c->topic.c_str()); + std::string sourceserv = Utils->FindServer(source)->GetName(); + c->WriteChannelWithServ(sourceserv.c_str(), "TOPIC %s :%s", c->name.c_str(), c->topic.c_str()); } else { |