diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-05-25 17:30:43 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2008-05-25 17:30:43 +0000 |
commit | 7d7250484c352c13830e63ae41ee8faae40a9bd5 (patch) | |
tree | 0fdf4941b4d72469a18eec97506f06f6e94e86e9 /src/commands/cmd_topic.cpp | |
parent | e7b837ec5f120f928a0dc321fa918bdd01ab0c02 (diff) |
First phase of conversion to dynamic limits on all the lengths, configured via the <limits> tag
(the tag isnt there yet, these all just run on defaults in the class constructor)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9802 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/commands/cmd_topic.cpp')
-rw-r--r-- | src/commands/cmd_topic.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/commands/cmd_topic.cpp b/src/commands/cmd_topic.cpp index e723a50c9..0e1a115da 100644 --- a/src/commands/cmd_topic.cpp +++ b/src/commands/cmd_topic.cpp @@ -70,7 +70,7 @@ CmdResult CommandTopic::Handle (const std::vector<std::string>& parameters, User } } - char topic[MAXTOPIC]; + std::string topic; if (IS_LOCAL(user)) { @@ -79,17 +79,17 @@ CmdResult CommandTopic::Handle (const std::vector<std::string>& parameters, User */ int MOD_RESULT = 0; - strlcpy(topic, parameters[1].c_str(), MAXTOPIC); + topic.assign(parameters[1], 0, ServerInstance->Config->Limits.MaxTopic); FOREACH_RESULT(I_OnLocalTopicChange,OnLocalTopicChange(user,Ptr,topic)); if (MOD_RESULT) return CMD_FAILURE; - Ptr->topic.assign(topic, 0, MAXTOPIC); + Ptr->topic.assign(topic, 0, ServerInstance->Config->Limits.MaxTopic); } else { /* Sneaky shortcut, one string copy for a remote topic */ - Ptr->topic.assign(parameters[1], 0, MAXTOPIC); + Ptr->topic.assign(parameters[1], 0, ServerInstance->Config->Limits.MaxTopic); } Ptr->setby.assign(ServerInstance->Config->FullHostInTopic ? |