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:
authorLukas Toenne <lukas.toenne@googlemail.com>2011-02-22 10:58:49 +0300
committerLukas Toenne <lukas.toenne@googlemail.com>2011-02-22 10:58:49 +0300
commit8b5d019139698383145d8613b457b69e063b3421 (patch)
tree5c1bb609acf32e2889df91c8ac5b8f14c661917f /source/blender/blenkernel/intern/node.c
parent1e120098fc7e668a28d7eed6a082f5a8b134e39c (diff)
Fixed missing initialization of node stack entries.
Diffstat (limited to 'source/blender/blenkernel/intern/node.c')
-rw-r--r--source/blender/blenkernel/intern/node.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c
index 7fd0a2d661a..c614b6910c2 100644
--- a/source/blender/blenkernel/intern/node.c
+++ b/source/blender/blenkernel/intern/node.c
@@ -2195,18 +2195,24 @@ static void group_tag_used_outputs(bNode *gnode, bNodeStack *stack, bNodeStack *
{
bNodeTree *ntree= (bNodeTree *)gnode->id;
bNode *node;
+ bNodeSocket *sock;
stack+= gnode->stack_index;
for(node= ntree->nodes.first; node; node= node->next) {
if(node->typeinfo->execfunc) {
- bNodeSocket *sock;
-
for(sock= node->inputs.first; sock; sock= sock->next) {
bNodeStack *ns = get_socket_stack(stack, sock, gin);
ns->hasoutput= 1;
}
}
+
+ /* set stack types (for local stack entries) */
+ for(sock= node->outputs.first; sock; sock= sock->next) {
+ bNodeStack *ns = get_socket_stack(stack, sock, NULL);
+ if (ns)
+ ns->sockettype = sock->type;
+ }
}
}
@@ -2313,6 +2319,13 @@ void ntreeBeginExecTree(bNodeTree *ntree)
}
}
+ /* set stack types (for local stack entries) */
+ for(sock= node->outputs.first; sock; sock= sock->next) {
+ ns = get_socket_stack(ntree->stack, sock, NULL);
+ if (ns)
+ ns->sockettype = sock->type;
+ }
+
if(node->type==NODE_GROUP && node->id) {
node_get_stack(node, ntree->stack, nsin, NULL, NULL);
group_tag_used_outputs(node, ntree->stack, nsin);