diff options
author | Dave Airlie <[email protected]> | 2017-12-19 05:36:53 +0000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2017-12-19 05:38:12 +0000 |
commit | a1e18e87c775f16f4d66d3bd7de286bfee19fb3a (patch) | |
tree | 4039c1f9f2b2290b34d3046af3854c7a5671efb4 | |
parent | 999f1cd5c6fc59b7e522dd12077ba1b6fe322242 (diff) |
r600: clear compressed flags in image state on unbind.
If we aren't binding an image, clear the compressed flags.
This fixes a segfault seen with an apitrace.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104331
Signed-off-by: Dave Airlie <[email protected]>
-rw-r--r-- | src/gallium/drivers/r600/evergreen_state.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index f64d6150037..0da665f6340 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -4071,6 +4071,8 @@ static void evergreen_set_shader_images(struct pipe_context *ctx, if (!images || !images[idx].resource) { pipe_resource_reference((struct pipe_resource **)&rview->base.resource, NULL); istate->enabled_mask &= ~(1 << i); + istate->compressed_colortex_mask &= ~(1 << i); + istate->compressed_depthtex_mask &= ~(1 << i); continue; } |