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.
This commit is contained in:
parent
36c4fc1ea9
commit
75cc33fa20
|
@ -1364,7 +1364,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++) {
|
||||
|
@ -1379,6 +1379,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;
|
||||
|
|
Loading…
Reference in New Issue