diff options
-rw-r--r-- | src/core/managed/ManagedContainer.hpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/managed/ManagedContainer.hpp b/src/core/managed/ManagedContainer.hpp index 68477e0..19bff3f 100644 --- a/src/core/managed/ManagedContainer.hpp +++ b/src/core/managed/ManagedContainer.hpp @@ -162,7 +162,7 @@ protected: void addElement(const value_type &elem) { Managed* managed = accessor.getManaged(elem); - Manager &manager = managed->getManager(); + Manager &manager = owner ? owner->getManager() : managed->getManager(); manager.addRef(managed, owner); listener.addElement(elem, owner); @@ -179,7 +179,7 @@ protected: void deleteElement(const value_type &elem) { Managed* managed = accessor.getManaged(elem); - Manager &manager = managed->getManager(); + Manager &manager = owner ? owner->getManager() : managed->getManager(); manager.deleteRef(managed, owner); listener.deleteElement(elem, owner); |