summaryrefslogtreecommitdiff
path: root/src/net/ea/chathandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/ea/chathandler.cpp')
-rw-r--r--src/net/ea/chathandler.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/net/ea/chathandler.cpp b/src/net/ea/chathandler.cpp
index 7199d3b5c..a10bf931d 100644
--- a/src/net/ea/chathandler.cpp
+++ b/src/net/ea/chathandler.cpp
@@ -49,6 +49,7 @@ namespace Ea
ChatHandler::ChatHandler() :
mSentWhispers(),
+ mMotdTime(-1),
mShowAllLang(serverConfig.getValue("showAllLang", 0)),
mShowMotd(config.getBoolValue("showmotd")),
mSkipping(true)
@@ -367,15 +368,17 @@ void ChatHandler::processChat(Net::MessageIn &msg, const bool normalChat,
}
}
- if (chatMsg.find(": ") == std::string::npos && !mShowMotd
+ if (pos == std::string::npos && !mShowMotd
&& mSkipping && channel.empty())
{
// skip motd from "new" tmw server
+ if (mMotdTime == -1)
+ mMotdTime = cur_time + 1;
+ else if (mMotdTime == cur_time || mMotdTime < cur_time)
+ mSkipping = false;
return;
}
- mSkipping = false;
-
if (pos != std::string::npos)
chatMsg.erase(0, pos + 3);