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.

(cherry picked from commit 572eab1c35)
This commit is contained in:
jackpoz
2018-02-17 23:26:50 +01:00
committed by funjoker
parent cb0a889177
commit b7aef385e8
4 changed files with 18 additions and 8 deletions

View File

@@ -1201,7 +1201,8 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul
{
ASSERT(namesProfanity->Language < TOTAL_LOCALES || namesProfanity->Language == -1);
std::wstring name;
ASSERT(Utf8toWStr(namesProfanity->Name, name));
bool conversionResult = Utf8toWStr(namesProfanity->Name, name);
ASSERT(conversionResult);
if (namesProfanity->Language != -1)
_nameValidators[namesProfanity->Language].emplace_back(name, Trinity::regex::perl | Trinity::regex::icase | Trinity::regex::optimize);
else
@@ -1219,7 +1220,8 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul
for (NamesReservedEntry const* namesReserved : sNamesReservedStore)
{
std::wstring name;
ASSERT(Utf8toWStr(namesReserved->Name, name));
bool conversionResult = Utf8toWStr(namesReserved->Name, name);
ASSERT(conversionResult);
_nameValidators[TOTAL_LOCALES].emplace_back(name, Trinity::regex::perl | Trinity::regex::icase | Trinity::regex::optimize);
}
@@ -1227,7 +1229,8 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul
{
ASSERT(!(namesReserved->LocaleMask & ~((1u << TOTAL_LOCALES) - 1)));
std::wstring name;
ASSERT(Utf8toWStr(namesReserved->Name, name));
bool conversionResult = Utf8toWStr(namesReserved->Name, name);
ASSERT(conversionResult);
for (uint32 i = 0; i < TOTAL_LOCALES; ++i)
{
if (i == LOCALE_none)

View File

@@ -823,7 +823,10 @@ bool VehicleJoinEvent::Execute(uint64, uint32)
if (Target->GetBase()->GetTypeId() == TYPEID_UNIT && Passenger->GetTypeId() == TYPEID_PLAYER &&
Seat->second.SeatInfo->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)

View File

@@ -169,7 +169,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;

View File

@@ -197,10 +197,12 @@ std::vector<TableStruct> 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;
}
@@ -301,7 +303,8 @@ void PlayerDump::InitializeTables()
f.FieldName = columnName;
f.IsBinaryField = !boost::ifind_first(typeName, "binary").empty() || !boost::ifind_first(typeName, "blob").empty();
ASSERT(Utf8ToUpperOnlyLatin(columnName));
bool toUpperResult = Utf8ToUpperOnlyLatin(columnName);
ASSERT(toUpperResult);
t.TableFields.emplace_back(std::move(f));
} while (result->NextRow());