From 4a7089b10a4f2dec2445933583ece93ad82cc2de Mon Sep 17 00:00:00 2001 From: jackpoz Date: Sat, 17 Feb 2018 23:26:50 +0100 Subject: [PATCH] Core/Misc: ASSERT() cleanup Move some functions calls out of ASSERT() calls. ASSERT() should only apply checks without modifying any object and without having any side effect. --- src/server/game/DataStores/DBCStores.cpp | 6 ++++-- src/server/game/Entities/Vehicle/Vehicle.cpp | 5 ++++- src/server/game/Groups/Group.cpp | 3 ++- src/server/game/Tools/PlayerDump.cpp | 9 ++++++--- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/server/game/DataStores/DBCStores.cpp b/src/server/game/DataStores/DBCStores.cpp index e71768912fe..240dc156ed3 100644 --- a/src/server/game/DataStores/DBCStores.cpp +++ b/src/server/game/DataStores/DBCStores.cpp @@ -524,7 +524,8 @@ void LoadDBCStores(const std::string& dataPath) ASSERT(namesProfanity->Language < TOTAL_LOCALES || namesProfanity->Language == -1); std::wstring wname; - ASSERT(Utf8toWStr(namesProfanity->Name, wname)); + bool conversionResult = Utf8toWStr(namesProfanity->Name, wname); + ASSERT(conversionResult); if (namesProfanity->Language != -1) NamesProfaneValidators[namesProfanity->Language].emplace_back(wname, Trinity::regex::perl | Trinity::regex::icase | Trinity::regex::optimize); @@ -541,7 +542,8 @@ void LoadDBCStores(const std::string& dataPath) ASSERT(namesReserved->Language < TOTAL_LOCALES || namesReserved->Language == -1); std::wstring wname; - ASSERT(Utf8toWStr(namesReserved->Name, wname)); + bool conversionResult = Utf8toWStr(namesReserved->Name, wname); + ASSERT(conversionResult); if (namesReserved->Language != -1) NamesReservedValidators[namesReserved->Language].emplace_back(wname, Trinity::regex::perl | Trinity::regex::icase | Trinity::regex::optimize); diff --git a/src/server/game/Entities/Vehicle/Vehicle.cpp b/src/server/game/Entities/Vehicle/Vehicle.cpp index e39aef40ceb..0fd8ec92ed2 100644 --- a/src/server/game/Entities/Vehicle/Vehicle.cpp +++ b/src/server/game/Entities/Vehicle/Vehicle.cpp @@ -862,7 +862,10 @@ bool VehicleJoinEvent::Execute(uint64, uint32) if (Target->GetBase()->GetTypeId() == TYPEID_UNIT && Passenger->GetTypeId() == TYPEID_PLAYER && Seat->second.SeatInfo->m_flags & VEHICLE_SEAT_FLAG_CAN_CONTROL) - ASSERT(Target->GetBase()->SetCharmedBy(Passenger, CHARM_TYPE_VEHICLE)); // SMSG_CLIENT_CONTROL + { + bool charmedByResult = Target->GetBase()->SetCharmedBy(Passenger, CHARM_TYPE_VEHICLE); // SMSG_CLIENT_CONTROL + ASSERT(charmedByResult); + } Passenger->SendClearTarget(); // SMSG_BREAK_TARGET Passenger->SetControlled(true, UNIT_STATE_ROOT); // SMSG_FORCE_ROOT - In some cases we send SMSG_SPLINE_MOVE_ROOT here (for creatures) diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp index d3a7d216879..11e32cd7494 100644 --- a/src/server/game/Groups/Group.cpp +++ b/src/server/game/Groups/Group.cpp @@ -152,7 +152,8 @@ bool Group::Create(Player* leader) Group::ConvertLeaderInstancesToGroup(leader, this, false); - ASSERT(AddMember(leader)); // If the leader can't be added to a new group because it appears full, something is clearly wrong. + bool addMemberResult = AddMember(leader); + ASSERT(addMemberResult); // If the leader can't be added to a new group because it appears full, something is clearly wrong. } else if (!AddMember(leader)) return false; diff --git a/src/server/game/Tools/PlayerDump.cpp b/src/server/game/Tools/PlayerDump.cpp index af05314e4dd..1057f8fec14 100644 --- a/src/server/game/Tools/PlayerDump.cpp +++ b/src/server/game/Tools/PlayerDump.cpp @@ -169,10 +169,12 @@ std::vector CharacterTables; inline bool StringsEqualCaseInsensitive(std::string const& left, std::string const& right) { std::string upperLeftString = left; - ASSERT(Utf8ToUpperOnlyLatin(upperLeftString)); + bool leftResult = Utf8ToUpperOnlyLatin(upperLeftString); + ASSERT(leftResult); std::string upperRightString = right; - ASSERT(Utf8ToUpperOnlyLatin(upperRightString)); + bool rightResult = Utf8ToUpperOnlyLatin(upperRightString); + ASSERT(rightResult); return upperLeftString == upperRightString; } @@ -271,7 +273,8 @@ void PlayerDump::InitializeTables() TableField f; f.FieldName = columnName; - ASSERT(Utf8ToUpperOnlyLatin(columnName)); + bool toUpperResult = Utf8ToUpperOnlyLatin(columnName); + ASSERT(toUpperResult); t.TableFields.emplace_back(std::move(f)); } while (result->NextRow());