[Bf-blender-cvs] [68ec6ef] openvdb: Fix memory leak when creating new sockets.

Kévin Dietrich noreply at git.blender.org
Fri Jun 5 14:08:44 CEST 2015


Commit: 68ec6efa768cfa40e8d2f6a5941acdae2831a282
Author: Kévin Dietrich
Date:   Mon Jun 1 15:10:51 2015 +0200
Branches: openvdb
https://developer.blender.org/rB68ec6efa768cfa40e8d2f6a5941acdae2831a282

Fix memory leak when creating new sockets.

===================================================================

M	source/blender/nodes/shader/nodes/node_shader_openvdb.c

===================================================================

diff --git a/source/blender/nodes/shader/nodes/node_shader_openvdb.c b/source/blender/nodes/shader/nodes/node_shader_openvdb.c
index eeaec03..b1ca484 100644
--- a/source/blender/nodes/shader/nodes/node_shader_openvdb.c
+++ b/source/blender/nodes/shader/nodes/node_shader_openvdb.c
@@ -94,7 +94,7 @@ static void node_openvdb_get_sockets(Main *bmain, bNodeTree *ntree, bNode *node)
 
 void ntreeUpdateOpenVDBNode(Main *bmain, bNodeTree *ntree, bNode *node)
 {
-	bNodeSocket *newsock, *oldsock;
+	bNodeSocket *newsock, *oldsock, *oldsock_next;
 	ListBase oldsocklist;
 	bNodeLink *link;
 	int oldindex;
@@ -115,6 +115,11 @@ void ntreeUpdateOpenVDBNode(Main *bmain, bNodeTree *ntree, bNode *node)
 			}
 		}
 	}
+
+	for (oldsock = oldsocklist.first; oldsock; oldsock = oldsock_next) {
+		oldsock_next = oldsock->next;
+		nodeRemoveSocket(ntree, node, oldsock);
+	}
 }
 #else
 void ntreeUpdateOpenVDBNode(Main *bmain, bNodeTree *ntree, bNode *node)




More information about the Bf-blender-cvs mailing list