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:
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2014-06-27 09:56:21 +0400
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2014-08-12 05:10:09 +0400
commitdb6d2a6fe181fc3915366e9a821e666126b6a473 (patch)
tree83d12ff991fe9d9381f0bc840b86fa9b01ed9a52 /source/blender/render/intern/source/external_engine.c
parentb272b729ce4c5d389c453b143c3220fce26e2cbc (diff)
Fix for nested Cycles sessions.
Diffstat (limited to 'source/blender/render/intern/source/external_engine.c')
-rw-r--r--source/blender/render/intern/source/external_engine.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index d253f4b5d05..5399faf3639 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -152,6 +152,7 @@ RenderEngine *RE_engine_create_ex(RenderEngineType *type, bool use_for_viewport)
void RE_engine_free(RenderEngine *engine)
{
+ printf("%s: engine %s\n", __func__, (engine->type) ? engine->type->idname : "<unknown>");
#ifdef WITH_PYTHON
if (engine->py_instance) {
BPY_DECREF_RNA_INVALIDATE(engine->py_instance);
@@ -647,11 +648,6 @@ int RE_engine_render(Render *re, int do_all)
if (type->render)
type->render(engine, re->scene);
-#ifdef WITH_FREESTYLE
- if (re->r.mode & R_EDGE_FRS)
- RE_RenderFreestyleExternal(re);
-#endif
-
engine->tile_x = 0;
engine->tile_y = 0;
engine->flag &= ~RE_ENGINE_RENDERING;
@@ -659,6 +655,7 @@ int RE_engine_render(Render *re, int do_all)
render_result_free_list(&engine->fullresult, engine->fullresult.first);
/* re->engine becomes zero if user changed active render engine during render */
+ printf("%s: persistent_data = %s\n", __func__, persistent_data ? "true" : "false");
if (!persistent_data || !re->engine) {
RE_engine_free(engine);
re->engine = NULL;
@@ -681,6 +678,11 @@ int RE_engine_render(Render *re, int do_all)
if (BKE_reports_contain(re->reports, RPT_ERROR))
G.is_break = true;
+#ifdef WITH_FREESTYLE
+ if (re->r.mode & R_EDGE_FRS)
+ RE_RenderFreestyleExternal(re);
+#endif
+
return 1;
}