Core/Misc: Fix some mem-leaks and uninitialized variables.

This commit is contained in:
kaelima
2012-08-12 20:06:12 +02:00
parent 65469c9ee9
commit f92946e128
11 changed files with 35 additions and 44 deletions
@@ -57,7 +57,8 @@ BattlegroundIC::BattlegroundIC()
BattlegroundIC::~BattlegroundIC() BattlegroundIC::~BattlegroundIC()
{ {
delete gunshipHorde;
delete gunshipAlliance;
} }
void BattlegroundIC::HandlePlayerResurrect(Player* player) void BattlegroundIC::HandlePlayerResurrect(Player* player)
@@ -276,14 +276,9 @@ public:
std::ostringstream stream; std::ostringstream stream;
stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3] << ' ' stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3] << ' '
<< m_auiEncounter[4] << ' ' << m_auiEncounter[5]; << m_auiEncounter[4] << ' ' << m_auiEncounter[5];
char* out = new char[stream.str().length() + 1];
strcpy(out, stream.str().c_str()); OUT_SAVE_INST_DATA_COMPLETE;
if (out) return stream.str();
{
OUT_SAVE_INST_DATA_COMPLETE;
return out;
}
return NULL;
} }
void Load(const char* in) void Load(const char* in)
@@ -180,12 +180,13 @@ class instance_zulaman : public InstanceMapScript
std::string GetSaveData() std::string GetSaveData()
{ {
OUT_SAVE_INST_DATA;
std::ostringstream ss; std::ostringstream ss;
ss << "S " << BossKilled << ' ' << ChestLooted << ' ' << QuestMinute; ss << "S " << BossKilled << ' ' << ChestLooted << ' ' << QuestMinute;
char* data = new char[ss.str().length()+1];
strcpy(data, ss.str().c_str()); OUT_SAVE_INST_DATA_COMPLETE;
//sLog->outError(LOG_FILTER_TSCR, "Zul'aman saved, %s.", data); return ss.str();
return data;
} }
void Load(const char* load) void Load(const char* load)
@@ -119,6 +119,18 @@ public:
void Initialize() void Initialize()
{ {
GahzRillaEncounter = NOT_STARTED; GahzRillaEncounter = NOT_STARTED;
ZumrahGUID = 0;
BlyGUID = 0;
WeegliGUID = 0;
OroGUID = 0;
RavenGUID = 0;
MurtaGUID = 0;
EndDoorGUID = 0;
PyramidPhase = 0;
major_wave_Timer = 0;
minor_wave_Timer = 0;
addGroupSize = 0;
waypoint = 0;
} }
void OnCreatureCreate(Creature* creature) void OnCreatureCreate(Creature* creature)
@@ -219,8 +219,6 @@ public:
} }
InstanceScript* instance; InstanceScript* instance;
Creature* pMemory;
uint64 MemoryGUID; uint64 MemoryGUID;
bool bHealth; bool bHealth;
@@ -190,16 +190,12 @@ public:
{ {
OUT_SAVE_INST_DATA; OUT_SAVE_INST_DATA;
std::string str_data;
std::ostringstream saveStream; std::ostringstream saveStream;
saveStream << "D K " << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' saveStream << "D K " << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' '
<< m_auiEncounter[2] << ' ' << m_auiEncounter[3]; << m_auiEncounter[2] << ' ' << m_auiEncounter[3];
str_data = saveStream.str();
OUT_SAVE_INST_DATA_COMPLETE; OUT_SAVE_INST_DATA_COMPLETE;
return str_data; return saveStream.str();
} }
void Load(const char* in) void Load(const char* in)
@@ -101,6 +101,7 @@ public:
boss_ingvar_the_plundererAI(Creature* creature) : ScriptedAI(creature) boss_ingvar_the_plundererAI(Creature* creature) : ScriptedAI(creature)
{ {
instance = creature->GetInstanceScript(); instance = creature->GetInstanceScript();
bIsUndead = false;
} }
InstanceScript* instance; InstanceScript* instance;
@@ -171,6 +171,7 @@ public:
summonTraveler_Timer = 90000; summonTraveler_Timer = 90000;
banish_Timer = 17000; banish_Timer = 17000;
HelpYell = false; HelpYell = false;
sumportals = false;
destroyPortals(); destroyPortals();
if (instance) if (instance)
@@ -200,16 +200,12 @@ public:
std::string GetSaveData() std::string GetSaveData()
{ {
OUT_SAVE_INST_DATA; OUT_SAVE_INST_DATA;
std::ostringstream stream; std::ostringstream stream;
stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3]; stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3];
char* out = new char[stream.str().length() + 1];
strcpy(out, stream.str().c_str()); OUT_SAVE_INST_DATA_COMPLETE;
if (out) return stream.str();
{
OUT_SAVE_INST_DATA_COMPLETE;
return out;
}
return NULL;
} }
void Load(const char* in) void Load(const char* in)
@@ -171,15 +171,9 @@ public:
OUT_SAVE_INST_DATA; OUT_SAVE_INST_DATA;
std::ostringstream stream; std::ostringstream stream;
stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1]; stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1];
char* out = new char[stream.str().length() + 1];
strcpy(out, stream.str().c_str());
if (out)
{
OUT_SAVE_INST_DATA_COMPLETE;
return out;
}
return NULL; OUT_SAVE_INST_DATA_COMPLETE;
return stream.str();
} }
void Load(const char* in) void Load(const char* in)
@@ -166,16 +166,12 @@ class instance_the_eye : public InstanceMapScript
std::string GetSaveData() std::string GetSaveData()
{ {
OUT_SAVE_INST_DATA; OUT_SAVE_INST_DATA;
std::ostringstream stream; std::ostringstream stream;
stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3]; stream << m_auiEncounter[0] << ' ' << m_auiEncounter[1] << ' ' << m_auiEncounter[2] << ' ' << m_auiEncounter[3];
char* out = new char[stream.str().length() + 1];
strcpy(out, stream.str().c_str()); OUT_SAVE_INST_DATA_COMPLETE;
if (out) return stream.str();
{
OUT_SAVE_INST_DATA_COMPLETE;
return out;
}
return NULL;
} }
void Load(const char* in) void Load(const char* in)