Page Menu
Home
Search
Configure Global Search
Log In
Files
F18949
fix31349.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Authored By
Sergey Sharybin (sergey)
Nov 13 2013, 4:12 PM
Size
1 KB
Subscribers
None
fix31349.patch
View Options
Index: source/blender/render/intern/source/pipeline.c
===================================================================
--- source/blender/render/intern/source/pipeline.c (revision 46411)
+++ source/blender/render/intern/source/pipeline.c (working copy)
@@ -1805,6 +1805,28 @@
return 1;
}
+static int node_tree_has_composite_output(bNodeTree *ntree)
+{
+ bNode *node;
+
+ for (node = ntree->nodes.first; node; node = node->next) {
+ if (node->type == CMP_NODE_COMPOSITE) {
+ return TRUE;
+ }
+ else if (node->type == NODE_GROUP) {
+ if (node_tree_has_composite_output((bNodeTree *)node->id))
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+static int check_composite_output(Scene *scene)
+{
+ return node_tree_has_composite_output(scene->nodetree);
+}
+
int RE_is_rendering_allowed(Scene *scene, Object *camera_override, ReportList *reports)
{
SceneRenderLayer *srl;
@@ -1839,19 +1861,12 @@
if (scene->r.scemode & R_DOCOMP) {
if (scene->use_nodes) {
- bNodeTree *ntree= scene->nodetree;
- bNode *node;
-
- if (ntree==NULL) {
+ if (!scene->nodetree) {
BKE_report(reports, RPT_ERROR, "No Nodetree in Scene");
return 0;
}
- for (node= ntree->nodes.first; node; node= node->next)
- if (node->type==CMP_NODE_COMPOSITE)
- break;
-
- if (node==NULL) {
+ if (!check_composite_output(scene)) {
BKE_report(reports, RPT_ERROR, "No Render Output Node in Scene");
return 0;
}
File Metadata
Details
Mime Type
text/x-diff
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
50/ad/0f01ae70dfce07c39bd2250c69cc
Event Timeline
Log In to Comment