Skip to content

Commit 58bf866

Browse files
committed
Fix mem. leak in buffer_iterator_index_expr default copy ctor
OpenCL buffer reference counter was increased in default copy ctor (since it called compute::buffer copy ctor), but was never decremented because dtor sets buffer to null preventing that.
1 parent 6e6bcf6 commit 58bf866

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

include/boost/compute/iterator/buffer_iterator.hpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,14 @@ struct buffer_iterator_index_expr
6565
{
6666
}
6767

68+
buffer_iterator_index_expr(const buffer_iterator_index_expr& other)
69+
: m_buffer(other.m_buffer.get(), false),
70+
m_index(other.m_index),
71+
m_address_space(other.m_address_space),
72+
m_expr(other.m_expr)
73+
{
74+
}
75+
6876
~buffer_iterator_index_expr()
6977
{
7078
// set buffer to null so that its reference count will

0 commit comments

Comments
 (0)