I have an issue with clRelease functions (clReleaseContext, ...). I developped a C++ library to manage easily OpenCL functions and a test application to control its working.
This application works fine and all clRelease functions are call with success.
Then I developped an other library that uses the first lib to use OpenCL and a test application to control its working.
This application stops when I try to enter in the first clRelease functions namely clReleaseContext.
The same problem appears with Intel and NVidia OpenCL driver. So this is not a driver problem but a usage problem.
OpenCL -> LIB_A -> TEST_APP_A : OK
OpenCL -> LIB_A -> LIB_B -> TEST_APP_B : not OK
Is someone could help me to find the problem?
I have to precise that I use boost shared_ptr in all the library to manage pointers.