[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45879] branches/tile/source/blender/ compositor/nodes/COM_HueSaturationValueNode.cpp: TileBranch
Jeroen Bakker
j.bakker at atmind.nl
Mon Apr 23 12:48:52 CEST 2012
Revision: 45879
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45879
Author: jbakker
Date: 2012-04-23 10:48:51 +0000 (Mon, 23 Apr 2012)
Log Message:
-----------
TileBranch
* Fix for bug [#31031]
Blender chrash after disconnect Hue Saturation Value node from image.
removed the is connected check. this could result is a wrongly formed operation tree
Modified Paths:
--------------
branches/tile/source/blender/compositor/nodes/COM_HueSaturationValueNode.cpp
Modified: branches/tile/source/blender/compositor/nodes/COM_HueSaturationValueNode.cpp
===================================================================
--- branches/tile/source/blender/compositor/nodes/COM_HueSaturationValueNode.cpp 2012-04-23 10:47:27 UTC (rev 45878)
+++ branches/tile/source/blender/compositor/nodes/COM_HueSaturationValueNode.cpp 2012-04-23 10:48:51 UTC (rev 45879)
@@ -36,35 +36,33 @@
}
void HueSaturationValueNode::convertToOperations(ExecutionSystem *graph, CompositorContext * context) {
- InputSocket *valueSocket = this->getInputSocket(0);
- InputSocket *colourSocket = this->getInputSocket(1);
- OutputSocket *outputSocket = this->getOutputSocket(0);
- bNode* editorsnode = getbNode();
- NodeHueSat *storage = (NodeHueSat*)editorsnode->storage;
+ InputSocket *valueSocket = this->getInputSocket(0);
+ InputSocket *colourSocket = this->getInputSocket(1);
+ OutputSocket *outputSocket = this->getOutputSocket(0);
+ bNode* editorsnode = getbNode();
+ NodeHueSat *storage = (NodeHueSat*)editorsnode->storage;
- if (colourSocket->isConnected() && outputSocket->isConnected()) {
- ConvertRGBToHSVOperation * rgbToHSV = new ConvertRGBToHSVOperation();
- ConvertHSVToRGBOperation * hsvToRGB = new ConvertHSVToRGBOperation();
- ChangeHSVOperation *changeHSV = new ChangeHSVOperation();
- MixBlendOperation * blend = new MixBlendOperation();
+ ConvertRGBToHSVOperation * rgbToHSV = new ConvertRGBToHSVOperation();
+ ConvertHSVToRGBOperation * hsvToRGB = new ConvertHSVToRGBOperation();
+ ChangeHSVOperation *changeHSV = new ChangeHSVOperation();
+ MixBlendOperation * blend = new MixBlendOperation();
- colourSocket->relinkConnections(rgbToHSV->getInputSocket(0), true, 0, graph);
- addLink(graph, rgbToHSV->getOutputSocket(), changeHSV->getInputSocket(0));
- addLink(graph, changeHSV->getOutputSocket(), hsvToRGB->getInputSocket(0));
- addLink(graph, hsvToRGB->getOutputSocket(), blend->getInputSocket(2));
- addLink(graph, rgbToHSV->getInputSocket(0)->getConnection()->getFromSocket(), blend->getInputSocket(1));
- valueSocket->relinkConnections(blend->getInputSocket(0), true, 0, graph);
- outputSocket->relinkConnections(blend->getOutputSocket());
+ colourSocket->relinkConnections(rgbToHSV->getInputSocket(0), true, 0, graph);
+ addLink(graph, rgbToHSV->getOutputSocket(), changeHSV->getInputSocket(0));
+ addLink(graph, changeHSV->getOutputSocket(), hsvToRGB->getInputSocket(0));
+ addLink(graph, hsvToRGB->getOutputSocket(), blend->getInputSocket(2));
+ addLink(graph, rgbToHSV->getInputSocket(0)->getConnection()->getFromSocket(), blend->getInputSocket(1));
+ valueSocket->relinkConnections(blend->getInputSocket(0), true, 0, graph);
+ outputSocket->relinkConnections(blend->getOutputSocket());
- changeHSV->setHue(storage->hue);
- changeHSV->setSaturation(storage->sat);
- changeHSV->setValue(storage->val);
+ changeHSV->setHue(storage->hue);
+ changeHSV->setSaturation(storage->sat);
+ changeHSV->setValue(storage->val);
- blend->setResolutionInputSocketIndex(1);
+ blend->setResolutionInputSocketIndex(1);
- graph->addOperation(rgbToHSV);
- graph->addOperation(hsvToRGB);
- graph->addOperation(changeHSV);
- graph->addOperation(blend);
- }
+ graph->addOperation(rgbToHSV);
+ graph->addOperation(hsvToRGB);
+ graph->addOperation(changeHSV);
+ graph->addOperation(blend);
}
More information about the Bf-blender-cvs
mailing list