diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-02-22 00:51:35 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-02-22 00:51:35 +0300 |
commit | 87c72a7d2714de286109573055d5d5da32ece91e (patch) | |
tree | 73a278791f7dcde5b97e374c846d25d1ac9682c2 /source/blender/windowmanager | |
parent | 7be1928ea1986408972007081ec139ee802ed528 (diff) |
BKE: Changing ID freeing order.
Screen can contains manipulators that contains batches to be freed before the opengl contexts (in WM) are destroyed.
Also fix other GPU related free.
Diffstat (limited to 'source/blender/windowmanager')
-rw-r--r-- | source/blender/windowmanager/intern/wm_init_exit.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source/blender/windowmanager/intern/wm_init_exit.c b/source/blender/windowmanager/intern/wm_init_exit.c index adb03de4612..8465ec1c608 100644 --- a/source/blender/windowmanager/intern/wm_init_exit.c +++ b/source/blender/windowmanager/intern/wm_init_exit.c @@ -521,6 +521,17 @@ void WM_exit_ext(bContext *C, const bool do_python) COM_deinitialize(); #endif + if (!G.background) { +#ifdef WITH_OPENSUBDIV + BKE_subsurf_osd_cleanup(); +#endif + + GPU_global_buffer_pool_free(); + GPU_free_unused_buffers(); + + GPU_exit(); + } + BKE_blender_free(); /* blender.c, does entire library and spacetypes */ // free_matcopybuf(); ANIM_fcurves_copybuf_free(); @@ -565,17 +576,6 @@ void WM_exit_ext(bContext *C, const bool do_python) (void)do_python; #endif - if (!G.background) { -#ifdef WITH_OPENSUBDIV - BKE_subsurf_osd_cleanup(); -#endif - - GPU_global_buffer_pool_free(); - GPU_free_unused_buffers(); - - GPU_exit(); - } - BKE_undo_reset(); ED_file_exit(); /* for fsmenu */ |