aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Guilds/Guild.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Guilds/Guild.cpp b/src/server/game/Guilds/Guild.cpp
index db59a02dd78..d7b13273a97 100644
--- a/src/server/game/Guilds/Guild.cpp
+++ b/src/server/game/Guilds/Guild.cpp
@@ -59,7 +59,8 @@ Guild::Guild()
Guild::~Guild()
{
- DeleteGuildBankItems(SQLTransaction(NULL));
+ SQLTransaction temp = SQLTransaction(NULL);
+ DeleteGuildBankItems(temp);
}
bool Guild::Create(Player* leader, std::string gname)
@@ -2356,7 +2357,7 @@ void Guild::DeleteGuildBankItems(SQLTransaction& trans, bool alsoInDB /*= false*
{
for (uint8 j = 0; j < GUILD_BANK_MAX_SLOTS; ++j)
{
- if (Item* pItem = m_TabListMap[i]->Slots[j])
+ if (Item*& pItem = m_TabListMap[i]->Slots[j])
{
pItem->RemoveFromWorld();
@@ -2364,9 +2365,11 @@ void Guild::DeleteGuildBankItems(SQLTransaction& trans, bool alsoInDB /*= false*
pItem->DeleteFromDB(trans);
delete pItem;
+ pItem = NULL;
}
}
delete m_TabListMap[i];
+ m_TabListMap[i] = NULL;
}
m_TabListMap.clear();
}