aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2014-03-09 17:09:15 +0100
committerjackpoz <giacomopoz@gmail.com>2014-03-09 17:09:15 +0100
commitd3575972709e0b3df87781ddfec51d8836f13257 (patch)
tree9a35ac26eeb26cf63a5b628fe8ec60215c52728c /src
parentde91f716a4ed50c8f660c004528edaca5d0edd0f (diff)
Scripts/Commands: Fix crash in ".kick" command
Fix a NULL dereference exception happening when using .kick command caused by a strtok(NULL) call without a previous call to the string to be tokenized. Issue added in 101cad1f2872a87be925b74b9d17760381bb9808
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Commands/cs_misc.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp
index 6de8a155d01..d0c21168c80 100644
--- a/src/server/scripts/Commands/cs_misc.cpp
+++ b/src/server/scripts/Commands/cs_misc.cpp
@@ -809,10 +809,13 @@ public:
if (handler->HasLowerSecurity(target, 0))
return false;
- char const* kickReason = strtok(NULL, "\r");
std::string kickReasonStr = "No reason";
- if (kickReason != NULL)
- kickReasonStr = kickReason;
+ if (*args != '\0')
+ {
+ char const* kickReason = strtok(NULL, "\r");
+ if (kickReason != NULL)
+ kickReasonStr = kickReason;
+ }
if (sWorld->getBoolConfig(CONFIG_SHOW_KICK_IN_WORLD))
sWorld->SendWorldText(LANG_COMMAND_KICKMESSAGE_WORLD, (handler->GetSession() ? handler->GetSession()->GetPlayerName().c_str() : "Server"), playerName.c_str(), kickReasonStr.c_str());