From 54dad5c49fb7f1bd6de0731756e2fadb863ed1b8 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Mon, 10 Oct 2016 12:51:01 +0200 Subject: [PATCH] OpenGL render: Fix missing file output after pressing Esc Apparently, the whole G.is_break is not used by OpenGL render, meaning this flag will not be clear before running the operator. This was causing missing file output after pressing Esc once for the rest of Blender session. --- source/blender/editors/render/render_opengl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/blender/editors/render/render_opengl.c b/source/blender/editors/render/render_opengl.c index f5bc079e06b..d9edff4a706 100644 --- a/source/blender/editors/render/render_opengl.c +++ b/source/blender/editors/render/render_opengl.c @@ -737,6 +737,8 @@ static void screen_opengl_render_end(bContext *C, OGLRender *oglrender) int i; if (oglrender->is_animation) { + /* Flag pool for cancel. */ + oglrender->pool_ok = false; BLI_task_pool_work_and_wait(oglrender->task_pool); BLI_task_pool_free(oglrender->task_pool); BLI_task_scheduler_free(oglrender->task_scheduler); @@ -860,7 +862,7 @@ static void write_result_func(TaskPool * __restrict pool, const int cfra = task_data->cfra; bool ok; /* Don't attempt to write if we've got an error. */ - if (!oglrender->pool_ok || G.is_break) { + if (!oglrender->pool_ok) { RE_FreeRenderResult(rr); BLI_mutex_lock(&oglrender->task_mutex); oglrender->num_scheduled_frames--;