Fixed an access violation when compiled with Visual Studio upon releasing the OpenCL program

pull/282/head
Cedric Nugteren 2018-04-26 21:10:17 +02:00
parent 5d46a3193e
commit 7b416c8686
2 changed files with 4 additions and 1 deletions

View File

@ -6,6 +6,7 @@ Development (next version)
- Improved the performance potential by adding a second tunable GEMM kernel with 2D register tiling
- Re-added a local memory size constraint to the tuners
- Updated and reorganised the CLBlast documentation
- Fixed an access violation when compiled with Visual Studio upon releasing the OpenCL program
- Various minor fixes and enhancements
- Added tuned parameters for various devices (see doc/tuning.md)
- Added non-BLAS level-1 routines:

View File

@ -442,7 +442,9 @@ class Program {
// Source-based constructor with memory management
explicit Program(const Context &context, const std::string &source):
program_(new cl_program, [](cl_program* p) {
if (*p) { CheckErrorDtor(clReleaseProgram(*p)); }
#ifndef _MSC_VER // 'clReleaseProgram' caused an access violation with Visual Studio
if (*p) { CheckErrorDtor(clReleaseProgram(*p)); }
#endif
delete p;
}) {
const char *source_ptr = &source[0];