summaryrefslogtreecommitdiff
path: root/src/player_relations.cpp
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-03-10 12:23:50 -0600
committerIra Rice <irarice@gmail.com>2009-03-15 13:21:03 -0600
commitd6f89802e5aa32f266e881e43d6005e821040c57 (patch)
tree8279ca50117fced2dc26f7e6d4bdd7d5694af255 /src/player_relations.cpp
parent4b459b50521f5d7a0518e229a20f14ed2f1d22f9 (diff)
downloadmana-d6f89802e5aa32f266e881e43d6005e821040c57.tar.gz
mana-d6f89802e5aa32f266e881e43d6005e821040c57.tar.bz2
mana-d6f89802e5aa32f266e881e43d6005e821040c57.tar.xz
mana-d6f89802e5aa32f266e881e43d6005e821040c57.zip
Fix some mem leaks
Diffstat (limited to 'src/player_relations.cpp')
-rw-r--r--src/player_relations.cpp31
1 files changed, 19 insertions, 12 deletions
diff --git a/src/player_relations.cpp b/src/player_relations.cpp
index 1c1ba669..eec4153c 100644
--- a/src/player_relations.cpp
+++ b/src/player_relations.cpp
@@ -29,6 +29,8 @@
#include "player.h"
#include "player_relations.h"
+#include "utils/dtor.h"
+
#define PLAYER_IGNORE_STRATEGY_NOP "nop"
#define PLAYER_IGNORE_STRATEGY_EMOTE0 "emote0"
#define DEFAULT_IGNORE_STRATEGY PLAYER_IGNORE_STRATEGY_EMOTE0
@@ -38,7 +40,6 @@
#define IGNORE_EMOTE_TIME 100
-
// (De)serialisation class
class PlayerConfSerialiser : public ConfigurationListManager<std::pair<std::string, PlayerRelation *>,
std::map<std::string, PlayerRelation *> *>
@@ -93,6 +94,11 @@ PlayerRelationsManager::PlayerRelationsManager() :
{
}
+PlayerRelationsManager::~PlayerRelationsManager()
+{
+ delete_all(mIgnoreStrategies);
+}
+
void PlayerRelationsManager::clear()
{
std::vector<std::string> *names = getPlayers();
@@ -351,19 +357,20 @@ static std::vector<PlayerIgnoreStrategy *> player_ignore_strategies;
std::vector<PlayerIgnoreStrategy *> *
PlayerRelationsManager::getPlayerIgnoreStrategies()
{
- if (player_ignore_strategies.size() == 0) {
+ if (mIgnoreStrategies.size() == 0)
+ {
// not initialised yet?
- player_ignore_strategies.push_back(new PIS_emote(FIRST_IGNORE_EMOTE,
- "floating '...' bubble",
- PLAYER_IGNORE_STRATEGY_EMOTE0));
- player_ignore_strategies.push_back(new PIS_emote(FIRST_IGNORE_EMOTE + 1,
- "floating bubble",
- "emote1"));
- player_ignore_strategies.push_back(new PIS_nothing());
- player_ignore_strategies.push_back(new PIS_dotdotdot());
- player_ignore_strategies.push_back(new PIS_blinkname());
+ mIgnoreStrategies.push_back(new PIS_emote(FIRST_IGNORE_EMOTE,
+ "floating '...' bubble",
+ PLAYER_IGNORE_STRATEGY_EMOTE0));
+ mIgnoreStrategies.push_back(new PIS_emote(FIRST_IGNORE_EMOTE + 1,
+ "floating bubble",
+ "emote1"));
+ mIgnoreStrategies.push_back(new PIS_nothing());
+ mIgnoreStrategies.push_back(new PIS_dotdotdot());
+ mIgnoreStrategies.push_back(new PIS_blinkname());
}
- return &player_ignore_strategies;
+ return &mIgnoreStrategies;
}