Itseez/opencv — pull request #3418 by tstellarAMD (2014-11-12 16:20:17+00:00)
Title: ocl: Fix crash during destruction of gauss_w_lut object in hog.cpp

ocl: Fix crash during destruction of gauss_w_lut object in hog.cpp

gauss_w_lut is a statically defined variable of type oclMat. The oclMat
destructor calls openCLFree() which via getInitializationMutex() accesses
the __module variable which has been statically defined in cl_context.cpp

Since the destruction order of statically defined variables in different
compilation units is undefined, it is possible that __module will
be destructed before gauss_w_lut, which would result in a segfault when
getInitializationMutex() is called while destructing gauss_w_lut.

In order to avoid this issue, we need to make gauss_w_lut a private
member of the HOGDescriptors class so we know it will be destroyed
before __module.