diff options
Diffstat (limited to 'source/blender/editors/space_node/node_templates.c')
-rw-r--r-- | source/blender/editors/space_node/node_templates.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/source/blender/editors/space_node/node_templates.c b/source/blender/editors/space_node/node_templates.c index a733d45c20b..8d82dd3fb53 100644 --- a/source/blender/editors/space_node/node_templates.c +++ b/source/blender/editors/space_node/node_templates.c @@ -49,6 +49,8 @@ #include "RNA_access.h" +#include "NOD_socket.h" + #include "WM_api.h" #include "WM_types.h" @@ -205,12 +207,9 @@ static void node_socket_add_replace(Main *bmain, bNodeTree *ntree, bNode *node_t nodeRemLink(ntree, link); } - if(sock_prev->default_value) { - if(sock_from->default_value) - MEM_freeN(sock_from->default_value); - - sock_from->default_value = MEM_dupallocN(sock_prev->default_value); - } + node_socket_free_default_value(sock_from->type, sock_from->default_value); + sock_from->default_value = node_socket_make_default_value(sock_from->type); + node_socket_copy_default_value(sock_from->type, sock_from->default_value, sock_prev->default_value); } } } |