[Bf-blender-cvs] [a4e4d9f0ab8] master: Fix more issues with recent render passes code cleanup.

Brecht Van Lommel noreply at git.blender.org
Fri Dec 28 12:41:13 CET 2018


Commit: a4e4d9f0ab89610df5bf1bbb0252e9130353b7fd
Author: Brecht Van Lommel
Date:   Fri Dec 28 12:28:26 2018 +0100
Branches: master
https://developer.blender.org/rBa4e4d9f0ab89610df5bf1bbb0252e9130353b7fd

Fix more issues with recent render passes code cleanup.

Ref D4133.

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

M	source/blender/blenloader/intern/versioning_270.c
M	source/blender/nodes/composite/nodes/node_composite_image.c

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

diff --git a/source/blender/blenloader/intern/versioning_270.c b/source/blender/blenloader/intern/versioning_270.c
index 201e3bf1c51..7e201aaf1d1 100644
--- a/source/blender/blenloader/intern/versioning_270.c
+++ b/source/blender/blenloader/intern/versioning_270.c
@@ -316,10 +316,6 @@ static void do_versions_compositor_render_passes_storage(bNode *node)
 	int pass_index = 0;
 	const char *sockname;
 	for (bNodeSocket *sock = node->outputs.first; sock && pass_index < 31; sock = sock->next, pass_index++) {
-		if ((pass_index >= 6 && pass_index <= 8) || (pass_index >= 11 && pass_index <= 13)) {
-			/* deprecated passes */
-			continue;
-		}
 		if (sock->storage == NULL) {
 			NodeImageLayer *sockdata = MEM_callocN(sizeof(NodeImageLayer), "node image layer");
 			sock->storage = sockdata;
diff --git a/source/blender/nodes/composite/nodes/node_composite_image.c b/source/blender/nodes/composite/nodes/node_composite_image.c
index 6cb7704d1a7..856b87631d7 100644
--- a/source/blender/nodes/composite/nodes/node_composite_image.c
+++ b/source/blender/nodes/composite/nodes/node_composite_image.c
@@ -52,8 +52,14 @@ static bNodeSocketTemplate cmp_node_rlayers_out[] = {
 	{	SOCK_VECTOR, 0, N_(RE_PASSNAME_NORMAL),					0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_VECTOR, 0, N_(RE_PASSNAME_UV),						1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_VECTOR, 0, N_(RE_PASSNAME_VECTOR),					1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_RGBA,   0, N_(RE_PASSNAME_SHADOW),					0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_RGBA,   0, N_(RE_PASSNAME_AO),						0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
+	{	SOCK_RGBA,   0, N_(RE_PASSNAME_DEPRECATED),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_FLOAT,  0, N_(RE_PASSNAME_INDEXOB),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_FLOAT,  0, N_(RE_PASSNAME_INDEXMA),				0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
 	{	SOCK_FLOAT,  0, N_(RE_PASSNAME_MIST),					0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f},
@@ -408,8 +414,11 @@ static void node_composit_free_rlayers(bNode *node)
 	bNodeSocket *sock;
 
 	/* free extra socket info */
-	for (sock = node->outputs.first; sock; sock = sock->next)
-		MEM_freeN(sock->storage);
+	for (sock = node->outputs.first; sock; sock = sock->next) {
+		if (sock->storage) {
+			MEM_freeN(sock->storage);
+		}
+	}
 }
 
 static void node_composit_copy_rlayers(bNodeTree *UNUSED(dest_ntree), bNode *UNUSED(dest_node), bNode *src_node)
@@ -417,8 +426,11 @@ static void node_composit_copy_rlayers(bNodeTree *UNUSED(dest_ntree), bNode *UNU
 	bNodeSocket *sock;
 
 	/* copy extra socket info */
-	for (sock = src_node->outputs.first; sock; sock = sock->next)
-		sock->new_sock->storage = MEM_dupallocN(sock->storage);
+	for (sock = src_node->outputs.first; sock; sock = sock->next) {
+		if (sock->storage) {
+			sock->new_sock->storage = MEM_dupallocN(sock->storage);
+		}
+	}
 }
 
 static void cmp_node_rlayers_update(bNodeTree *ntree, bNode *node)



More information about the Bf-blender-cvs mailing list