diff options
Diffstat (limited to 'source/blender/imbuf/intern/openexr')
-rw-r--r-- | source/blender/imbuf/intern/openexr/openexr_api.cpp | 8 | ||||
-rw-r--r-- | source/blender/imbuf/intern/openexr/openexr_api.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp index e8e6e0576ed..bad5e0efd65 100644 --- a/source/blender/imbuf/intern/openexr/openexr_api.cpp +++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp @@ -1921,4 +1921,12 @@ void imb_initopenexr(void) setGlobalThreadCount(num_threads); } +void imb_exitopenexr(void) +{ + /* Tells OpenEXR to free thread pool, also ensures there is no running + * tasks. + */ + setGlobalThreadCount(0); +} + } // export "C" diff --git a/source/blender/imbuf/intern/openexr/openexr_api.h b/source/blender/imbuf/intern/openexr/openexr_api.h index 92bbeecfd5d..32d276b31ea 100644 --- a/source/blender/imbuf/intern/openexr/openexr_api.h +++ b/source/blender/imbuf/intern/openexr/openexr_api.h @@ -40,6 +40,7 @@ extern "C" { #include <stdio.h> void imb_initopenexr (void); +void imb_exitopenexr (void); int imb_is_a_openexr (const unsigned char *mem); |