From f2d7db397cec2b9081afba2cb74c1b01f4cb05b8 Mon Sep 17 00:00:00 2001 From: HanzZ Date: Fri, 26 Aug 2011 11:47:28 +0200 Subject: [PATCH] use pool allocator for roster manager --- include/transport/rostermanager.h | 4 +++- src/rostermanager.cpp | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/include/transport/rostermanager.h b/include/transport/rostermanager.h index 677e0736..90ed926c 100644 --- a/include/transport/rostermanager.h +++ b/include/transport/rostermanager.h @@ -23,6 +23,8 @@ #include #include #include +#include +#include #include "Swiften/Swiften.h" // #include "rosterstorage.h" @@ -100,7 +102,7 @@ class RosterManager { void sendRIE(); void handleBuddyRosterPushResponse(Swift::ErrorPayload::ref error, const std::string &key); - std::map m_buddies; + std::map, boost::pool_allocator< std::pair > > m_buddies; Component *m_component; RosterStorage *m_rosterStorage; User *m_user; diff --git a/src/rostermanager.cpp b/src/rostermanager.cpp index 433db4d6..e7d24247 100644 --- a/src/rostermanager.cpp +++ b/src/rostermanager.cpp @@ -63,6 +63,8 @@ RosterManager::~RosterManager() { delete buddy; } + boost::singleton_pool::release_memory(); + if (m_rosterStorage) delete m_rosterStorage; }