From 0c8fd1b9e6a4840bb573c26602f439e7c6ab9d7d Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Tue, 30 Mar 2010 13:16:43 -0600 Subject: Fix some memory issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-by: Thorbjørn Lindeijer --- src/party.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/party.cpp') diff --git a/src/party.cpp b/src/party.cpp index b47c194a..22740489 100644 --- a/src/party.cpp +++ b/src/party.cpp @@ -46,6 +46,12 @@ Party::Party(short id): { parties[id] = this; } + +Party::~Party() +{ + clearMembers(); +} + PartyMember *Party::addMember(int id, const std::string &name) { PartyMember *m; @@ -132,7 +138,9 @@ void Party::removeMember(PartyMember *member) if((*itr)->mId == member->mId && (*itr)->getName() == member->getName()) { + PartyMember *member = (*itr); mMembers.erase(itr); + delete member; } ++itr; } @@ -146,7 +154,9 @@ void Party::removeMember(int id) { if((*itr)->mId == id) { + PartyMember *member = (*itr); mMembers.erase(itr); + delete member; } ++itr; } @@ -160,7 +170,9 @@ void Party::removeMember(const std::string &name) { if((*itr)->getName() == name) { + PartyMember *member = (*itr); mMembers.erase(itr); + delete member; } ++itr; } -- cgit v1.2.3-70-g09d2