diff options
-rw-r--r-- | src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c index 820c1d85934..b537e2bf4fd 100644 --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c @@ -668,8 +668,6 @@ make_separate_stencil_surface(struct brw_context *brw, if (!mt->stencil_mt) return false; - mt->stencil_mt->r8stencil_needs_update = true; - return true; } @@ -2933,7 +2931,7 @@ intel_update_r8stencil(struct brw_context *brw, assert(devinfo->gen >= 7); struct intel_mipmap_tree *src = mt->format == MESA_FORMAT_S_UINT8 ? mt : mt->stencil_mt; - if (!src || devinfo->gen >= 8 || !src->r8stencil_needs_update) + if (!src || devinfo->gen >= 8) return; assert(src->surf.size > 0); @@ -2957,6 +2955,9 @@ intel_update_r8stencil(struct brw_context *brw, assert(mt->r8stencil_mt); } + if (src->r8stencil_needs_update == false) + return; + struct intel_mipmap_tree *dst = mt->r8stencil_mt; for (int level = src->first_level; level <= src->last_level; level++) { |