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:
authorCampbell Barton <ideasman42@gmail.com>2017-11-03 12:59:15 +0300
committerCampbell Barton <ideasman42@gmail.com>2017-11-03 12:59:15 +0300
commitcd4f925f564a01d96038c83a9d39396e275f71a4 (patch)
treee72edf52555925e6373a8831e97c5e78294e0f2a
parent4c53f2000f603e13c091c533bccc0e694b5d34ad (diff)
parentd19d094ca9bb4f05b0f95c9f168340050864f103 (diff)
Merge branch 'master' into blender2.8
-rw-r--r--intern/cycles/blender/blender_session.cpp16
-rw-r--r--source/blender/editors/interface/interface_regions.c2
-rw-r--r--source/blender/render/intern/source/external_engine.c2
-rw-r--r--source/blenderplayer/bad_level_call_stubs/stubs.c1
4 files changed, 11 insertions, 10 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index 567afca6707..02869081834 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -336,20 +336,20 @@ void BlenderSession::do_write_update_render_tile(RenderTile& rtile, bool do_upda
BL::RenderLayer b_rlay = *b_single_rlay;
if(do_update_only) {
- /* update only needed */
+ /* Sample would be zero at initial tile update, which is only needed
+ * to tag tile form blender side as IN PROGRESS for proper highlight
+ * no buffers should be sent to blender yet. For denoise we also
+ * keep showing the noisy buffers until denoise is done. */
+ bool merge = (rtile.sample != 0) && (rtile.task != RenderTile::DENOISE);
- if(rtile.sample != 0) {
- /* sample would be zero at initial tile update, which is only needed
- * to tag tile form blender side as IN PROGRESS for proper highlight
- * no buffers should be sent to blender yet
- */
+ if(merge) {
update_render_result(b_rr, b_rlay, rtile);
}
- end_render_result(b_engine, b_rr, true, highlight, false);
+ end_render_result(b_engine, b_rr, true, highlight, merge);
}
else {
- /* write result */
+ /* Write final render result. */
write_render_result(b_rr, b_rlay, rtile);
end_render_result(b_engine, b_rr, false, false, true);
}
diff --git a/source/blender/editors/interface/interface_regions.c b/source/blender/editors/interface/interface_regions.c
index 81a7640610d..c541d9590f9 100644
--- a/source/blender/editors/interface/interface_regions.c
+++ b/source/blender/editors/interface/interface_regions.c
@@ -2971,7 +2971,7 @@ uiPieMenu *UI_pie_menu_begin(struct bContext *C, const char *title, int icon, co
wmWindow *win = CTX_wm_window(C);
style = UI_style_get_dpi();
- pie = MEM_callocN(sizeof(uiPopupMenu), "pie menu");
+ pie = MEM_callocN(sizeof(*pie), "pie menu");
pie->block_radial = UI_block_begin(C, NULL, __func__, UI_EMBOSS);
/* may be useful later to allow spawning pies
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index 960bdf57b09..15a49480d1a 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -300,7 +300,7 @@ void RE_engine_end_result(RenderEngine *engine, RenderResult *result, int cancel
RenderPart *pa = get_part_from_result(re, result);
if (pa) {
- pa->status = (merge_results)? PART_STATUS_MERGED: PART_STATUS_RENDERED;
+ pa->status = (!cancel && merge_results)? PART_STATUS_MERGED: PART_STATUS_RENDERED;
}
else if (re->result->do_exr_tile) {
/* if written result does not match any tile and we are using save
diff --git a/source/blenderplayer/bad_level_call_stubs/stubs.c b/source/blenderplayer/bad_level_call_stubs/stubs.c
index 6243b65c197..c4053b31b48 100644
--- a/source/blenderplayer/bad_level_call_stubs/stubs.c
+++ b/source/blenderplayer/bad_level_call_stubs/stubs.c
@@ -634,6 +634,7 @@ void uiItemR(uiLayout *layout, struct PointerRNA *ptr, const char *propname, int
void uiItemFullO(uiLayout *layout, const char *idname, const char *name, int icon, struct IDProperty *properties, int context, int flag, struct PointerRNA *r_opptr) RET_NONE
void uiItemFullO_ptr(struct uiLayout *layout, struct wmOperatorType *ot, const char *name, int icon, struct IDProperty *properties, int context, int flag, struct PointerRNA *r_opptr) RET_NONE
+void uiItemFullOMenuHold_ptr( uiLayout *layout, struct wmOperatorType *ot, const char *name, int icon, struct IDProperty *properties, int context, int flag, const char *menu_id, /* extra menu arg. */ PointerRNA *r_opptr) RET_NONE
struct uiLayout *uiLayoutRow(uiLayout *layout, int align) RET_NULL
struct uiLayout *uiLayoutColumn(uiLayout *layout, int align) RET_NULL
struct uiLayout *uiLayoutColumnFlow(uiLayout *layout, int number, int align) RET_NULL