Commit 171fafb9 authored by Dominik Charousset's avatar Dominik Charousset

Fix memory leak in cow-ptr implementation

parent 862083ec
...@@ -29,8 +29,11 @@ namespace caf { ...@@ -29,8 +29,11 @@ namespace caf {
/// @relates intrusive_cow_ptr /// @relates intrusive_cow_ptr
template <class T> template <class T>
T* default_intrusive_cow_ptr_unshare(T*& ptr) { T* default_intrusive_cow_ptr_unshare(T*& ptr) {
if (!ptr->unique()) if (!ptr->unique()) {
ptr = ptr->copy(); auto new_ptr = ptr->copy();
intrusive_ptr_release(ptr);
ptr = new_ptr;
}
return ptr; return ptr;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment