iris: fix a scissor bug
authorKenneth Graunke <kenneth@whitecape.org>
Sat, 7 Apr 2018 07:58:07 +0000 (00:58 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:05 +0000 (10:26 -0800)
src/gallium/drivers/iris/iris_state.c

index a0f6a685b435ce1cc7b689015b60e735a04d439c..12eb57a821b2f638257e37be5660fed116051ec4 100644 (file)
@@ -2253,7 +2253,8 @@ iris_upload_render_state(struct iris_context *ice,
    }
 
    if (dirty & IRIS_DIRTY_SCISSOR) {
-      uint32_t scissor_offset =
+      // XXX: allocate at set_scissor time?
+      uint32_t scissor_offset = ice->state.num_scissors == 0 ? 0 :
          emit_state(batch, ice->state.dynamic_uploader, ice->state.scissors,
                     sizeof(struct pipe_scissor_state) *
                     ice->state.num_scissors, 32);