diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-14 14:36:43 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-14 14:36:43 +0400 |
commit | 3475f5137ad08eb81926a672e588f0af9b62756c (patch) | |
tree | 274e80489fc119a6bb617964abb02debfc8c821f | |
parent | 9f2e845181e0828124b3c29519a82b38293291f5 (diff) |
fix fox AddonPreferences not getting registered automatically and leak when removing the addon (wasnt freeing ID-props).
-rw-r--r-- | release/scripts/modules/bpy_types.py | 4 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_userdef.c | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/release/scripts/modules/bpy_types.py b/release/scripts/modules/bpy_types.py index 1c861aa3be2..6c4e1f74cc4 100644 --- a/release/scripts/modules/bpy_types.py +++ b/release/scripts/modules/bpy_types.py @@ -612,6 +612,10 @@ class KeyingSetInfo(StructRNA, metaclass=RNAMeta): __slots__ = () +class AddonPreferences(StructRNA, metaclass=RNAMeta): + __slots__ = () + + class _GenericUI: __slots__ = () diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c index 28ba7d4f66a..70399888e5a 100644 --- a/source/blender/makesrna/intern/rna_userdef.c +++ b/source/blender/makesrna/intern/rna_userdef.c @@ -325,6 +325,11 @@ static void rna_userdef_addon_remove(ReportList *reports, PointerRNA *bext_ptr) return; } + if (bext->prop) { + IDP_FreeProperty(bext->prop); + MEM_freeN(bext->prop); + } + BLI_freelinkN(&U.addons, bext); RNA_POINTER_INVALIDATE(bext_ptr); } |