Blender Git Loki
Git Commits -> Revision 06ecdab
August 23, 2021, 07:18 (GMT) |
Fix T88033: Python reference memory leaks for non main data-blocks ID data-blocks that could be accessed from Python and weren't freed using BKE_id_free_ex did not release the Python reference count. Add BKE_libblock_free_data_py function to clear the Python reference in this case. Add asserts to ensure no Python reference is held in situations when ID's are copied for internal use (not exposed through the RNA API), to ensure these kinds of leaks don't go by unnoticed again. |
Commit Details:
Full Hash: 06ecdab9bc6a7ec43fbf7906fc6db6520a73f465
Parent Commit: 85b2893
Committed By: Jeroen Bakker
Lines Changed: +38, -8
11 Modified Paths:
/source/blender/blenkernel/BKE_lib_id.h (+2, -0) (Diff)
/source/blender/blenkernel/intern/gpencil.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/lib_id_delete.c (+27, -8) (Diff)
/source/blender/blenkernel/intern/material.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/node.cc (+1, -0) (Diff)
/source/blender/blenkernel/intern/particle_system.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/scene.c (+1, -0) (Diff)
/source/blender/editors/space_clip/clip_editor.c (+1, -0) (Diff)
/source/blender/gpu/intern/gpu_material.c (+1, -0) (Diff)
/source/blender/nodes/shader/node_shader_tree.c (+1, -0) (Diff)
/source/blender/windowmanager/intern/wm.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/gpencil.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/lib_id_delete.c (+27, -8) (Diff)
/source/blender/blenkernel/intern/material.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/node.cc (+1, -0) (Diff)
/source/blender/blenkernel/intern/particle_system.c (+1, -0) (Diff)
/source/blender/blenkernel/intern/scene.c (+1, -0) (Diff)
/source/blender/editors/space_clip/clip_editor.c (+1, -0) (Diff)
/source/blender/gpu/intern/gpu_material.c (+1, -0) (Diff)
/source/blender/nodes/shader/node_shader_tree.c (+1, -0) (Diff)
/source/blender/windowmanager/intern/wm.c (+1, -0) (Diff)