Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-10-10 13:51:01 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-10-10 13:51:01 +0300
commit54dad5c49fb7f1bd6de0731756e2fadb863ed1b8 (patch)
treed8a9c907cb96fb6da51d408eb119c806fbdeff07
parent109192b3601ddfa8ec44ab2fd276298ac690a9a2 (diff)
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.
-rw-r--r--source/blender/editors/render/render_opengl.c4
1 files changed, 3 insertions, 1 deletions
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--;