Bugfix 33075

Nodes could use duplicated memory - and on free you get duplicate-free errors.
Affected texture nodes, but I suspect compositing too.

Fix found by Philipp Oeser. Thanks!
This commit is contained in:
Ton Roosendaal
2012-11-04 11:53:13 +00:00
parent 7579a9ec37
commit 2122eda05a

View File

@@ -405,10 +405,14 @@ bNode *nodeCopyNode(struct bNodeTree *ntree, struct bNode *node)
nnode->new_node = NULL;
/* only shader nodes get pleasant preview updating this way, compo uses own system */
if (node->preview && ntree->type == NTREE_SHADER) {
nnode->preview = MEM_dupallocN(node->preview);
if (node->preview->rect)
nnode->preview->rect = MEM_dupallocN(node->preview->rect);
if (node->preview) {
if (ntree->type == NTREE_SHADER) {
nnode->preview = MEM_dupallocN(node->preview);
if (node->preview->rect)
nnode->preview->rect = MEM_dupallocN(node->preview->rect);
}
else
nnode->preview = NULL;
}
if (ntree)