[Bf-blender-cvs] [d9e6268e89] blender-v2.78c-release: Fix Cycles still saving render output when error happened

Sergey Sharybin noreply at git.blender.org
Fri Feb 24 14:21:03 CET 2017


Commit: d9e6268e8912c495a117dc0805ec33dd8125a269
Author: Sergey Sharybin
Date:   Wed Feb 22 13:06:24 2017 +0100
Branches: blender-v2.78c-release
https://developer.blender.org/rBd9e6268e8912c495a117dc0805ec33dd8125a269

Fix Cycles still saving render output when error happened

This was fixed ages ago for the interface case but not for the
command line. The thing here is that currently external engines
are relying on reports system to indicate that error happened
so suppressing reports storage in the background mode prevented
render pipeline from detecting errors happened.

This is all weak and i don't like it, but this is better than
delivering black frames from the farm.

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

M	source/creator/creator_args.c

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

diff --git a/source/creator/creator_args.c b/source/creator/creator_args.c
index c3c76a0d1d..3335fd3dd5 100644
--- a/source/creator/creator_args.c
+++ b/source/creator/creator_args.c
@@ -1355,7 +1355,7 @@ static int arg_handle_render_frame(int argc, const char **argv, void *data)
 
 			re = RE_NewRender(scene->id.name);
 			BLI_begin_threaded_malloc();
-			BKE_reports_init(&reports, RPT_PRINT);
+			BKE_reports_init(&reports, RPT_STORE);
 
 			RE_SetReports(re, &reports);
 			for (int i = 0; i < frames_range_len; i++) {
@@ -1370,6 +1370,7 @@ static int arg_handle_render_frame(int argc, const char **argv, void *data)
 				}
 			}
 			RE_SetReports(re, NULL);
+			BKE_reports_clear(&reports);
 			BLI_end_threaded_malloc();
 			MEM_freeN(frame_range_arr);
 			return 1;




More information about the Bf-blender-cvs mailing list