diff options
| author | 2014-04-16 13:20:39 +0200 | |
|---|---|---|
| committer | 2014-04-16 13:20:39 +0200 | |
| commit | 67e0e32b86885df705a92cdc971a6085c4a7c1ba (patch) | |
| tree | 1f3ba6b2d1d4f240c287d8ff11d30e98561e7adb /src/modules/m_spanningtree/ftopic.cpp | |
| parent | m_spanningtree Throw an exception on protocol violations instead of returning... (diff) | |
m_spanningtree Add ServerCommand::ExtractTS() to convert string to raw TS
Throws a ProtocolException if the input is invalid
Diffstat (limited to 'src/modules/m_spanningtree/ftopic.cpp')
| -rw-r--r-- | src/modules/m_spanningtree/ftopic.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/src/modules/m_spanningtree/ftopic.cpp b/src/modules/m_spanningtree/ftopic.cpp index bd15489a2..3c76c928a 100644 --- a/src/modules/m_spanningtree/ftopic.cpp +++ b/src/modules/m_spanningtree/ftopic.cpp @@ -28,19 +28,12 @@ CmdResult CommandFTopic::Handle(User* user, std::vector<std::string>& params) if (!c) return CMD_FAILURE; - time_t ChanTS = ConvToInt(params[1]); - if (!ChanTS) - return CMD_INVALID; - - if (c->age < ChanTS) + if (c->age < ServerCommand::ExtractTS(params[1])) // Our channel TS is older, nothing to do return CMD_FAILURE; - time_t ts = ConvToInt(params[2]); - if (!ts) - return CMD_INVALID; - // Channel::topicset is initialized to 0 on channel creation, so their ts will always win if we never had a topic + time_t ts = ServerCommand::ExtractTS(params[2]); if (ts < c->topicset) return CMD_FAILURE; |
