aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Tools/PlayerDump.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2023-05-13 15:46:27 +0200
committerShauren <shauren.trinity@gmail.com>2023-08-15 21:59:52 +0200
commita4299c2a4b88d1cbdcea1301a190da6081abf876 (patch)
tree85b194c12b0413b8da3ad554633ddeb0fec98185 /src/server/game/Tools/PlayerDump.cpp
parentb9201d3c07ecbd690117d248bec238e3657b57b9 (diff)
Core/Misc: Replace string to int conversion functions from Common.h with c++17 std::from_chars based ones Trinity::StringTo
(cherry picked from commit 3260b94dd627b7b0c7114f94bb97d108b005af3e)
Diffstat (limited to 'src/server/game/Tools/PlayerDump.cpp')
-rw-r--r--src/server/game/Tools/PlayerDump.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/server/game/Tools/PlayerDump.cpp b/src/server/game/Tools/PlayerDump.cpp
index ffe70f76863..d9e78dadf4c 100644
--- a/src/server/game/Tools/PlayerDump.cpp
+++ b/src/server/game/Tools/PlayerDump.cpp
@@ -23,6 +23,7 @@
#include "Log.h"
#include "ObjectMgr.h"
#include "Player.h"
+#include "StringConvert.h"
#include "World.h"
#include <fstream>
#include <sstream>
@@ -503,7 +504,7 @@ inline T RegisterNewGuid(T oldGuid, MapType<T, T, Rest...>& guidMap, T guidOffse
template <typename T, template<class, class, class...> class MapType, class... Rest>
inline bool ChangeGuid(TableStruct const& ts, std::string& str, std::string const& column, MapType<T, T, Rest...>& guidMap, T guidOffset, bool allowZero = false)
{
- T oldGuid(atoull(GetColumn(ts, str, column).c_str()));
+ T oldGuid = Trinity::StringTo<T>(GetColumn(ts, str, column)).template value_or<T>(0);
if (allowZero && !oldGuid)
return true; // not an error
@@ -915,10 +916,10 @@ DumpReturn PlayerDumpReader::LoadDump(std::istream& input, uint32 account, std::
{
case DTT_CHARACTER:
{
- race = uint8(atoul(GetColumn(ts, line, "race").c_str()));
- playerClass = uint8(atoul(GetColumn(ts, line, "class").c_str()));
- gender = uint8(atoul(GetColumn(ts, line, "gender").c_str()));
- level = uint8(atoul(GetColumn(ts, line, "level").c_str()));
+ race = Trinity::StringTo<uint8>(GetColumn(ts, line, "race")).value_or<uint8>(0);
+ playerClass = Trinity::StringTo<uint8>(GetColumn(ts, line, "class")).value_or<uint8>(0);
+ gender = Trinity::StringTo<uint8>(GetColumn(ts, line, "gender")).value_or<uint8>(0);
+ level = Trinity::StringTo<uint8>(GetColumn(ts, line, "level")).value_or<uint8>(0);
if (name.empty())
{
// generate a temporary name