Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2019-02-19 15:08:22 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2019-02-19 15:08:22 +0300
commit4df88960627aa9560e70e4bcfcfa5c3acfb2c8b7 (patch)
treea4c38f48adf89c90888dc3c82656551f7c1d5d00 /source
parentbab2d2ba439ddd991a04c9765a9976e21fa94219 (diff)
Playanim: Fix heap use after free on exit
Was caused by the wrong de-initialization order, here is an ASAN log just in case P916.
Diffstat (limited to 'source')
-rw-r--r--source/blender/windowmanager/intern/wm_playanim.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/windowmanager/intern/wm_playanim.c b/source/blender/windowmanager/intern/wm_playanim.c
index 58e5882deac..a8d75ac8fdb 100644
--- a/source/blender/windowmanager/intern/wm_playanim.c
+++ b/source/blender/windowmanager/intern/wm_playanim.c
@@ -1540,6 +1540,8 @@ static char *wm_main_playanim_intern(int argc, const char **argv)
GPU_shader_free_builtin_shaders();
+ immDeactivate();
+
if (g_WS.gpu_context) {
GPU_context_active_set(g_WS.gpu_context);
GPU_context_discard(g_WS.gpu_context);
@@ -1548,7 +1550,6 @@ static char *wm_main_playanim_intern(int argc, const char **argv)
BLF_exit();
- immDeactivate();
GPU_exit();
GHOST_DisposeWindow(g_WS.ghost_system, g_WS.ghost_window);