diff --git a/src/server/database/Database/Field.cpp b/src/server/database/Database/Field.cpp index 1120b754e..83158aab9 100644 --- a/src/server/database/Database/Field.cpp +++ b/src/server/database/Database/Field.cpp @@ -212,7 +212,7 @@ T Field::GetData() const if (data.raw) result = *reinterpret_cast(data.value); else - result = Acore::StringTo(data.value); + result = Acore::StringTo(std::string_view(data.value, data.length)); // Correct double fields... this undefined behavior :/ if constexpr (std::is_same_v) @@ -220,7 +220,7 @@ T Field::GetData() const if (data.raw && !IsType(DatabaseFieldTypes::Decimal)) result = *reinterpret_cast(data.value); else - result = Acore::StringTo(data.value); + result = Acore::StringTo(std::string_view(data.value, data.length)); } // Check -1 for *_dbc db tables @@ -230,7 +230,7 @@ T Field::GetData() const if (!tableName.empty() && tableName.size() > 4) { - auto signedResult = Acore::StringTo(data.value); + auto signedResult = Acore::StringTo(std::string_view(data.value, data.length)); if (signedResult && !result && tableName.substr(tableName.length() - 4) == "_dbc") {