diff --git a/modules/ocl/src/fft.cpp b/modules/ocl/src/fft.cpp index 300ae60a7f..aab2a040a7 100644 --- a/modules/ocl/src/fft.cpp +++ b/modules/ocl/src/fft.cpp @@ -54,6 +54,10 @@ void cv::ocl::dft(const oclMat&, oclMat&, Size, int) { CV_Error(CV_StsNotImplemented, "OpenCL DFT is not implemented"); } +namespace cv { namespace ocl { + void fft_teardown(); +}} +void cv::ocl::fft_teardown(){} #else #include "clAmdFft.h" namespace cv diff --git a/modules/ocl/src/initialization.cpp b/modules/ocl/src/initialization.cpp index c90b62b1a8..d4dcd5332e 100644 --- a/modules/ocl/src/initialization.cpp +++ b/modules/ocl/src/initialization.cpp @@ -65,6 +65,7 @@ namespace cv { namespace ocl { + extern void fft_teardown(); /* * The binary caching system to eliminate redundant program source compilation. * Strictly, this is not a cache because we do not implement evictions right now. @@ -877,6 +878,7 @@ namespace cv } void Info::release() { + fft_teardown(); if(impl->oclplatform) { impl->oclplatform = 0;