From b527a031b9f37cc2d159efc4e241c2eab97ffb20 Mon Sep 17 00:00:00 2001 From: Peter Keresztes Schmidt Date: Sat, 22 Aug 2020 17:36:13 +0200 Subject: Core/ChatCommands: Add std::wstring argument type (#25302) (cherry picked from commit 617a769d6f8dc51d049296fbccca724713916ed4) --- src/server/game/Chat/ChatCommands/ChatCommandArgs.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/server/game/Chat/ChatCommands') diff --git a/src/server/game/Chat/ChatCommands/ChatCommandArgs.h b/src/server/game/Chat/ChatCommands/ChatCommandArgs.h index fa60be0cf86..a90790265ca 100644 --- a/src/server/game/Chat/ChatCommands/ChatCommandArgs.h +++ b/src/server/game/Chat/ChatCommands/ChatCommandArgs.h @@ -120,6 +120,25 @@ struct ArgInfo } }; +// wstring +template <> +struct ArgInfo +{ + static char const* TryConsume(std::wstring& val, char const* args) + { + std::string utf8Str; + char const* ret = ArgInfo::TryConsume(utf8Str, args); + + if (!ret) + return nullptr; + + if (!Utf8toWStr(utf8Str, val)) + return nullptr; + + return ret; + } +}; + // enum template struct ArgInfo>> -- cgit v1.2.3