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
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/makesrna/intern/rna_nodetree.c')
-rw-r--r--source/blender/makesrna/intern/rna_nodetree.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c
index c4672ead29d..a0f7f9b585e 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -1652,8 +1652,7 @@ static bNodeType *rna_Node_register_base(Main *bmain,
/* create a new node type */
nt = MEM_callocN(sizeof(bNodeType), "node type");
memcpy(nt, &dummynt, sizeof(dummynt));
- /* make sure the node type struct is freed on unregister */
- nt->needs_free = 1;
+ nt->free_self = (void (*)(bNodeType *))MEM_freeN;
nt->ext.srna = RNA_def_struct_ptr(&BLENDER_RNA, nt->idname, basetype);
nt->ext.data = data;
@@ -2185,6 +2184,8 @@ static StructRNA *rna_NodeSocket_register(Main *UNUSED(bmain),
nodeRegisterSocketType(st);
}
+ st->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN;
+
/* if RNA type is already registered, unregister first */
if (st->ext_socket.srna) {
StructRNA *srna = st->ext_socket.srna;
@@ -2499,6 +2500,8 @@ static StructRNA *rna_NodeSocketInterface_register(Main *UNUSED(bmain),
nodeRegisterSocketType(st);
}
+ st->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN;
+
/* if RNA type is already registered, unregister first */
if (st->ext_interface.srna) {
StructRNA *srna = st->ext_interface.srna;