From 46ecb9252891c472c1f34fb6a2b5fb7ffeef3793 Mon Sep 17 00:00:00 2001 From: danieldg Date: Wed, 13 May 2009 17:04:25 +0000 Subject: [PATCH] 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 --- src/mode.cpp | 2 +- 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& 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 & 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 { -- 2.39.2