Revision: 48244
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48244
Author:   nazgul
Date:     2012-06-24 17:38:14 +0000 (Sun, 24 Jun 2012)
Log Message:
-----------
Skip edge matte operation creation if output socket is not connected.

Modified Paths:
--------------
    trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp

Modified: trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp
===================================================================
--- trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp    
2012-06-24 16:19:19 UTC (rev 48243)
+++ trunk/blender/source/blender/compositor/nodes/COM_KeyingNode.cpp    
2012-06-24 17:38:14 UTC (rev 48244)
@@ -161,7 +161,7 @@
        OutputSocket *outputImage = this->getOutputSocket(0);
        OutputSocket *outputMatte = this->getOutputSocket(1);
        OutputSocket *outputEdges = this->getOutputSocket(2);
-       OutputSocket *postprocessedMatte, *postprocessedImage, *originalImage, 
*edgesMatte;
+       OutputSocket *postprocessedMatte = NULL, *postprocessedImage = NULL, 
*originalImage = NULL, *edgesMatte = NULL;
 
        bNode *editorNode = this->getbNode();
        NodeKeyingData *keying_data = (NodeKeyingData *) editorNode->storage;
@@ -195,9 +195,11 @@
                                               keying_data->clip_black, 
keying_data->clip_white, false);
        }
 
-       edgesMatte = setupClip(graph, postprocessedMatte,
-                              keying_data->edge_kernel_radius, 
keying_data->edge_kernel_tolerance,
-                              keying_data->clip_black, 
keying_data->clip_white, true);
+       if (outputEdges->isConnected()) {
+               edgesMatte = setupClip(graph, postprocessedMatte,
+                                      keying_data->edge_kernel_radius, 
keying_data->edge_kernel_tolerance,
+                                      keying_data->clip_black, 
keying_data->clip_white, true);
+       }
 
        /* apply blur on matte if needed */
        if (keying_data->blur_post)
@@ -225,7 +227,9 @@
        /* connect result to output sockets */
        outputImage->relinkConnections(postprocessedImage);
        outputMatte->relinkConnections(postprocessedMatte);
-       outputEdges->relinkConnections(edgesMatte);
 
+       if (edgesMatte)
+               outputEdges->relinkConnections(edgesMatte);
+
        graph->addOperation(alphaOperation);
 }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to