• Tom Stellard's avatar
    ocl: Fix crash during destruction of gauss_w_lut object in hog.cpp · ec335b73
    Tom Stellard authored
    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.
    ec335b73
Name
Last commit
Last update
3rdparty Loading commit data...
apps Loading commit data...
cmake Loading commit data...
data Loading commit data...
doc Loading commit data...
include Loading commit data...
modules Loading commit data...
platforms Loading commit data...
samples Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.tgitconfig Loading commit data...
CMakeLists.txt Loading commit data...
LICENSE Loading commit data...
README.md Loading commit data...
index.rst Loading commit data...