diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-11-22 16:48:09 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-11-22 16:48:09 +0400 |
commit | eb75e4368521db5373b0abe429079184a016d598 (patch) | |
tree | e37cadc46cacec5ca04c5510f03c3b8fbfd84efe /intern/opencolorio | |
parent | 3583686433d1f02f05c92d1e9f95405e9b8e5ae2 (diff) |
Solved descriptors leak in OCIO module on windows
Seems was simply caused by wrong destructor used in processorRelease
Diffstat (limited to 'intern/opencolorio')
-rw-r--r-- | intern/opencolorio/ocio_impl.cc | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/intern/opencolorio/ocio_impl.cc b/intern/opencolorio/ocio_impl.cc index 49fc44d1e12..2d73d2ff56b 100644 --- a/intern/opencolorio/ocio_impl.cc +++ b/intern/opencolorio/ocio_impl.cc @@ -48,7 +48,7 @@ using namespace OCIO_NAMESPACE; #endif #define MEM_NEW(type) new(MEM_mallocN(sizeof(type), __func__)) type() -#define MEM_DELETE(what, type) if(what) { (what)->~type(); MEM_freeN(what); } (void)0 +#define MEM_DELETE(what, type) if(what) { ((type*)(what))->~type(); MEM_freeN(what); } (void)0 static void OCIO_reportError(const char *err) { @@ -421,8 +421,7 @@ void OCIOImpl::processorApplyRGBA_predivide(OCIO_ConstProcessorRcPtr *processor, void OCIOImpl::processorRelease(OCIO_ConstProcessorRcPtr *p) { - p->~OCIO_ConstProcessorRcPtr(); - MEM_freeN(p); + MEM_DELETE(p, ConstProcessorRcPtr); } const char *OCIOImpl::colorSpaceGetName(OCIO_ConstColorSpaceRcPtr *cs) |