[Bf-blender-cvs] [a89ef76] master: Fix for own mistake: arc diff swallowed a commit somehow, breaking compilation.

Lukas Tönne noreply at git.blender.org
Sun Mar 2 17:10:30 CET 2014


Commit: a89ef76136b8a529e1a4755a8b411da93ed81651
Author: Lukas Tönne
Date:   Sun Mar 2 17:04:24 2014 +0100
https://developer.blender.org/rBa89ef76136b8a529e1a4755a8b411da93ed81651

Fix for own mistake: arc diff swallowed a commit somehow, breaking
compilation.

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

M	source/blender/blenkernel/BKE_node.h
M	source/blender/makesdna/DNA_node_types.h
M	source/blender/nodes/intern/node_socket.c
M	source/blender/nodes/intern/node_util.c
M	source/blender/nodes/shader/nodes/node_shader_tex_wave.c

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

diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h
index d37e16e..59ea921 100644
--- a/source/blender/blenkernel/BKE_node.h
+++ b/source/blender/blenkernel/BKE_node.h
@@ -101,8 +101,6 @@ typedef struct bNodeSocketTemplate {
 	float min, max;
 	int subtype;  /* would use PropertySubType but this is a bad level include to use RNA */
 	int flag;
-	/* optional: allowed inputs for internal links */
-	const bool *internal_links;
 	
 	/* after this line is used internal only */
 	struct bNodeSocket *sock;		/* used to hold verified socket */
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index c21cdfa..cd9595d 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -128,9 +128,6 @@ typedef struct bNodeSocket {
 
 	/* XXX deprecated, socket input values are stored in default_value now. kept for forward compatibility */
 	bNodeStack ns  DNA_DEPRECATED;	/* custom data for inputs, only UI writes in this */
-
-	/* optional: allowed inputs for internal links */
-	const bool *internal_links;
 } bNodeSocket;
 
 /* sock->type */
@@ -161,7 +158,8 @@ typedef enum eNodeSocketFlag {
 	// SOCK_INTERNAL = 32,				/* DEPRECATED  group socket should not be exposed */
 	SOCK_COLLAPSED = 64,				/* socket collapsed in UI */
 	SOCK_HIDE_VALUE = 128,				/* hide socket value, if it gets auto default */
-	SOCK_AUTO_HIDDEN__DEPRECATED = 256	/* socket hidden automatically, to distinguish from manually hidden */
+	SOCK_AUTO_HIDDEN__DEPRECATED = 256,	/* socket hidden automatically, to distinguish from manually hidden */
+	SOCK_NO_INTERNAL_LINK = 512
 } eNodeSocketFlag;
 
 /* limit data in bNode to what we want to see saved? */
diff --git a/source/blender/nodes/intern/node_socket.c b/source/blender/nodes/intern/node_socket.c
index b791f6f..b30658f 100644
--- a/source/blender/nodes/intern/node_socket.c
+++ b/source/blender/nodes/intern/node_socket.c
@@ -56,7 +56,6 @@ struct bNodeSocket *node_add_socket_from_template(struct bNodeTree *ntree, struc
 	bNodeSocket *sock = nodeAddStaticSocket(ntree, node, in_out, stemp->type, stemp->subtype, stemp->identifier, stemp->name);
 	
 	sock->flag |= stemp->flag;
-	sock->internal_links = stemp->internal_links;
 	
 	/* initialize default_value */
 	switch (stemp->type) {
@@ -118,7 +117,6 @@ static bNodeSocket *verify_socket_template(bNodeTree *ntree, bNode *node, int in
 		sock->type = stemp->type;
 		sock->limit = (stemp->limit == 0 ? 0xFFF : stemp->limit);
 		sock->flag |= stemp->flag;
-		sock->internal_links = stemp->internal_links;
 		
 		BLI_remlink(socklist, sock);
 		
diff --git a/source/blender/nodes/intern/node_util.c b/source/blender/nodes/intern/node_util.c
index 8fb455c..d3bde0a 100644
--- a/source/blender/nodes/intern/node_util.c
+++ b/source/blender/nodes/intern/node_util.c
@@ -183,7 +183,6 @@ static int node_datatype_priority(eNodeSocketDatatype from, eNodeSocketDatatype
 /* select a suitable input socket for an output */
 static bNodeSocket *select_internal_link_input(bNode *node, bNodeSocket *output)
 {
-	const bool *allowed_inputs = output->internal_links;
 	bNodeSocket *selected = NULL, *input;
 	int i;
 	int sel_priority = -1;
@@ -195,9 +194,9 @@ static bNodeSocket *select_internal_link_input(bNode *node, bNodeSocket *output)
 		bool preferred;
 		
 		if (nodeSocketIsHidden(input) ||                /* ignore hidden sockets */
-		    (allowed_inputs && !allowed_inputs[i]) ||   /* ignore if input is not allowed */
+		    input->flag & SOCK_NO_INTERNAL_LINK ||      /* ignore if input is not allowed for internal connections */
 		    priority < 0 ||                             /* ignore incompatible types */
-		    (priority < sel_priority))                  /* ignore if we already found a higher priority input */
+		    priority < sel_priority)                  /* ignore if we already found a higher priority input */
 			continue;
 		
 		/* determine if this input is preferred over the currently selected */
@@ -234,7 +233,7 @@ void node_update_internal_links_default(bNodeTree *ntree, bNode *node)
 		output = link->fromsock;
 		if (link->fromnode != node || output->link)
 			continue;
-		if (nodeSocketIsHidden(output))
+		if (nodeSocketIsHidden(output) || output->flag & SOCK_NO_INTERNAL_LINK)
 			continue;
 		output->link = link; /* not really used, just for tagging handled sockets */
 		
diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_wave.c b/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
index a052817..e502f7d 100644
--- a/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
+++ b/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
@@ -41,8 +41,8 @@ static bNodeSocketTemplate sh_node_tex_wave_in[] = {
 const bool internal_links[5] = {0,0,0,0,0};
 
 static bNodeSocketTemplate sh_node_tex_wave_out[] = {
-	{	SOCK_RGBA, 0, N_("Color"),		0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_NONE, 0, internal_links},
-	{	SOCK_FLOAT, 0, N_("Fac"),		0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR, 0, internal_links},
+	{	SOCK_RGBA, 0, N_("Color"),		0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_NONE, SOCK_NO_INTERNAL_LINK},
+	{	SOCK_FLOAT, 0, N_("Fac"),		0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR, SOCK_NO_INTERNAL_LINK},
 	{	-1, 0, ""	}
 };




More information about the Bf-blender-cvs mailing list