From 7972785d7b90771f50534fe3e1101d8adb615fa3 Mon Sep 17 00:00:00 2001 From: Germano Cavalcante Date: Wed, 24 Feb 2021 11:57:29 -0300 Subject: PyAPI: Fix memory leak of parameters used for python 'draw_callbacks' When closing the blender, while the callbacks are removed, the reference count of the object used as `customdata` is not decremented. This commit adds two functions that correctly release the python `draw_callbacks` before releasing all `draw_callbacks`. Differential Revision: https://developer.blender.org/D10478 --- source/blender/windowmanager/intern/wm.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/windowmanager/intern/wm.c') diff --git a/source/blender/windowmanager/intern/wm.c b/source/blender/windowmanager/intern/wm.c index 549b59e9e1d..b43357b1462 100644 --- a/source/blender/windowmanager/intern/wm.c +++ b/source/blender/windowmanager/intern/wm.c @@ -595,6 +595,9 @@ void wm_close_and_free(bContext *C, wmWindowManager *wm) WM_msgbus_destroy(wm->message_bus); } +#ifdef WITH_PYTHON + BPY_callback_wm_free(wm); +#endif BLI_freelistN(&wm->paintcursors); WM_drag_free_list(&wm->drags); -- cgit v1.2.3