Fix T38726: blender internal viewport render crash when deleting render layer.

This commit is contained in:
Brecht Van Lommel 2014-02-21 15:10:47 +01:00
parent 415adf7263
commit 277126881d
Notes: blender-bot 2023-02-14 11:09:47 +01:00
Referenced by issue #38726, Blender Internal: Rendered viewport won't be updated and will crash if active render layer is changed/deleted.
1 changed files with 3 additions and 1 deletions

View File

@ -503,6 +503,7 @@ static int check_mode_full_sample(RenderData *rd)
void RE_InitState(Render *re, Render *source, RenderData *rd, SceneRenderLayer *srl, int winx, int winy, rcti *disprect)
{
bool had_freestyle = (re->r.mode & R_EDGE_FRS) != 0;
int prev_actlay = re->r.actlay;
re->ok = TRUE; /* maybe flag */
@ -602,7 +603,8 @@ void RE_InitState(Render *re, Render *source, RenderData *rd, SceneRenderLayer *
re->result = NULL;
}
else if (re->result) {
if (re->result->rectx == re->rectx && re->result->recty == re->recty) {
if (re->result->rectx == re->rectx && re->result->recty == re->recty &&
prev_actlay == re->r.actlay) {
/* keep render result, this avoids flickering black tiles
* when the preview changes */
}