[Bf-blender-cvs] [33297db] master: OpenGL: Do not schedule new frames for write if error happens
Sergey Sharybin
noreply at git.blender.org
Fri Oct 7 17:48:28 CEST 2016
Commit: 33297db9de8f9313ed6975bd3645c45093e7c0e6
Author: Sergey Sharybin
Date: Fri Oct 7 16:05:51 2016 +0200
Branches: master
https://developer.blender.org/rB33297db9de8f9313ed6975bd3645c45093e7c0e6
OpenGL: Do not schedule new frames for write if error happens
Also do not attempt to write any already scheduled frames.
===================================================================
M source/blender/editors/render/render_opengl.c
===================================================================
diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c
index db0ffb9..3737c32 100644
--- a/source/blender/editors/render/render_opengl.c
+++ b/source/blender/editors/render/render_opengl.c
@@ -841,6 +841,11 @@ static void write_result_func(TaskPool * __restrict pool,
const bool is_movie = BKE_imtype_is_movie(scene->r.im_format.imtype);
const int cfra = task_data->cfra;
bool ok;
+ /* Don't attempt to write if we've got an error. */
+ if (!oglrender->pool_ok) {
+ RE_FreeRenderResult(rr);
+ return;
+ }
/* Construct local thread0safe copy of reports structure which we can
* safely pass to the underlying functions.
*/
@@ -907,6 +912,7 @@ static void write_result_func(TaskPool * __restrict pool,
static bool schedule_write_result(OGLRender *oglrender, RenderResult *rr)
{
if (!oglrender->pool_ok) {
+ RE_FreeRenderResult(rr);
return false;
}
Scene *scene = oglrender->scene;
More information about the Bf-blender-cvs
mailing list