From f2d7db397cec2b9081afba2cb74c1b01f4cb05b8 2011-08-26 11:47:28 From: HanzZ Date: 2011-08-26 11:47:28 Subject: [PATCH] use pool allocator for roster manager --- diff --git a/include/transport/rostermanager.h b/include/transport/rostermanager.h index 677e073665d407e54aff17e0c5d8a5be2acff28e..90ed926cb43bac6d2a5061f9c13f0fbf6dc14984 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 433db4d636a3ea363920c2d6c8176d3fca896da5..e7d24247c8bd92b31439856eb28275d3c67871b9 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; }