[ekiga/ds-fix-boost-leaks: 1/7] DynamicObjectStore: Restore updated/removed signal relay from RefLister.
- From: Damien Sandras <dsandras src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [ekiga/ds-fix-boost-leaks: 1/7] DynamicObjectStore: Restore updated/removed signal relay from RefLister.
- Date: Mon, 25 May 2015 15:44:51 +0000 (UTC)
commit 5926d4bb5e537fa394ae436f9415d3a4da844062
Author: Damien Sandras <dsandras seconix com>
Date: Mon May 25 17:14:25 2015 +0200
DynamicObjectStore: Restore updated/removed signal relay from RefLister.
lib/engine/framework/dynamic-object-store.h | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/lib/engine/framework/dynamic-object-store.h b/lib/engine/framework/dynamic-object-store.h
index ebaf5cb..5fedec1 100644
--- a/lib/engine/framework/dynamic-object-store.h
+++ b/lib/engine/framework/dynamic-object-store.h
@@ -93,7 +93,6 @@ namespace Ekiga
template<typename ObjectType>
Ekiga::DynamicObjectStore<ObjectType>::~DynamicObjectStore ()
{
- remove_all_objects ();
}
@@ -116,13 +115,16 @@ Ekiga::DynamicObjectStore<ObjectType>::add_object (boost::shared_ptr<ObjectType>
if (iter == objects.end ()) {
objects[obj] = boost::shared_ptr<scoped_connections> (new scoped_connections);
object_added (obj);
+
+ objects[obj]->add (obj->updated.connect (boost::bind (boost::ref (object_updated), _1)));
+ objects[obj]->add (obj->removed.connect (boost::bind
(&Ekiga::DynamicObjectStore<ObjectType>::remove_object, this, _1)));
}
}
template<typename ObjectType>
void
Ekiga::DynamicObjectStore<ObjectType>::add_connection (boost::shared_ptr<ObjectType> obj,
- boost::signals2::connection connection)
+ boost::signals2::connection connection)
{
typename container_type::iterator iter = objects.find (obj);
if (iter == objects.end ())
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]