Remove some redundant explicit NULL checks for pointers before ´delete´ or ´delete[]´ calls since this check is done implicitly when deleting.

Also fixes a memory leak in .reload creature_template command

--HG--
branch : trunk
This commit is contained in:
Machiavelli
2010-06-21 23:20:58 +02:00
parent 5c86cc2aee
commit 95ddfbd9e2
19 changed files with 47 additions and 94 deletions
@@ -171,11 +171,8 @@ Creature::~Creature()
{
m_vendorItemCounts.clear();
if (i_AI)
{
delete i_AI;
i_AI = NULL;
}
delete i_AI;
i_AI = NULL;
//if (m_uint32Values)
// sLog.outError("Deconstruct Creature Entry = %u", GetEntry());
@@ -721,7 +718,7 @@ bool Creature::AIM_Initialize(CreatureAI* ai)
Motion_Initialize();
i_AI = ai ? ai : FactorySelector::selectAI(this);
if (oldAI) delete oldAI;
delete oldAI;
IsAIEnabled = true;
i_AI->InitializeAI();
return true;
@@ -117,11 +117,8 @@ bool Bag::LoadFromDB(uint32 guid, uint64 owner_guid, QueryResult_AutoPtr result)
for (uint8 i = 0; i < MAX_BAG_SIZE; ++i)
{
SetUInt64Value(CONTAINER_FIELD_SLOT_1 + (i*2), 0);
if (m_bagslot[i])
{
delete m_bagslot[i];
m_bagslot[i] = NULL;
}
delete m_bagslot[i];
m_bagslot[i] = NULL;
}
return true;
+3 -7
View File
@@ -113,13 +113,9 @@ Object::~Object()
ObjectAccessor::Instance().RemoveUpdateObject(this);
}
if (m_uint32Values)
{
//DEBUG_LOG("Object desctr 1 check (%p)",(void*)this);
delete [] m_uint32Values;
delete [] m_uint32Values_mirror;
//DEBUG_LOG("Object desctr 2 check (%p)",(void*)this);
}
delete [] m_uint32Values;
delete [] m_uint32Values_mirror;
}
void Object::_InitValues()
@@ -32,8 +32,7 @@ class UpdateMask
~UpdateMask()
{
if (mUpdateMask)
delete [] mUpdateMask;
delete [] mUpdateMask;
}
void SetBit (uint32 index)
@@ -58,8 +57,7 @@ class UpdateMask
void SetCount (uint32 valuesCount)
{
if (mUpdateMask)
delete [] mUpdateMask;
delete [] mUpdateMask;
mCount = valuesCount;
mBlocks = (valuesCount + 31) / 32;
+1 -3
View File
@@ -324,9 +324,7 @@ bool Pet::LoadPetFromDB(Player* owner, uint32 petentry, uint32 petnumber, bool c
if (result)
{
if (m_declinedname)
delete m_declinedname;
delete m_declinedname;
m_declinedname = new DeclinedName;
Field *fields2 = result->Fetch();
for (uint8 i = 0; i < MAX_DECLINED_NAME_CASES; ++i)
+5 -14
View File
@@ -514,10 +514,7 @@ Player::~Player ()
// Note: buy back item already deleted from DB when player was saved
for (uint8 i = 0; i < PLAYER_SLOTS_COUNT; ++i)
{
if (m_items[i])
delete m_items[i];
}
delete m_items[i];
for (PlayerSpellMap::const_iterator itr = m_spells.begin(); itr != m_spells.end(); ++itr)
delete itr->second;
@@ -539,8 +536,7 @@ Player::~Player ()
delete PlayerTalkClass;
for (size_t x = 0; x < ItemSetEff.size(); x++)
if (ItemSetEff[x])
delete ItemSetEff[x];
delete ItemSetEff[x];
delete m_declinedname;
delete m_runes;
@@ -15565,9 +15561,7 @@ void Player::_LoadDeclinedNames(QueryResult_AutoPtr result)
if (!result)
return;
if (m_declinedname)
delete m_declinedname;
delete m_declinedname;
m_declinedname = new DeclinedName;
Field *fields = result->Fetch();
for (uint8 i = 0; i < MAX_DECLINED_NAME_CASES; ++i)
@@ -15817,11 +15811,8 @@ bool Player::LoadFromDB(uint32 guid, SqlQueryHolder *holder)
SetUInt64Value(PLAYER_FIELD_INV_SLOT_HEAD + (slot * 2), 0);
SetVisibleItemSlot(slot, NULL);
if (m_items[slot])
{
delete m_items[slot];
m_items[slot] = NULL;
}
delete m_items[slot];
m_items[slot] = NULL;
}
sLog.outDebug("Load Basic value of player %s is: ", m_name.c_str());
+3 -6
View File
@@ -201,10 +201,8 @@ Unit::~Unit()
RemoveAllDynObjects();
_DeleteRemovedAuras();
if (m_charmInfo)
delete m_charmInfo;
if (m_vehicleKit)
delete m_vehicleKit;
delete m_charmInfo;
delete m_vehicleKit;
assert(!m_attacking);
assert(m_attackers.empty());
@@ -13297,8 +13295,7 @@ void Unit::UpdateCharmAI()
{
if (!isCharmed())
{
if (i_AI)
delete i_AI;
delete i_AI;
i_AI = i_disabledAI;
i_disabledAI = NULL;
}