OSDN Git Service

svga: check for null fs pointer in update_samplers()
authorBrian Paul <brianp@vmware.com>
Thu, 28 Dec 2017 16:16:44 +0000 (09:16 -0700)
committerBrian Paul <brianp@vmware.com>
Thu, 28 Dec 2017 16:49:31 +0000 (09:49 -0700)
This can happen when there's no active fragment shader, such as
when using transform feedback.  This wasn't hit by any Piglit test
but is hit by Daniel Rákos' Nature demo.  VMware bug 2026189.

Reviewed-by: Charmaine Lee <charmainel@vmware.com>
src/gallium/drivers/svga/svga_state_sampler.c

index 9bd0d53..11f36e3 100644 (file)
@@ -399,7 +399,7 @@ update_samplers(struct svga_context *svga, unsigned dirty )
              * for this texture unit, don't enable shadow compare in
              * the texture sampler state.
              */
-            if (fs->fs_shadow_compare_units & (1 << i)) {
+            if (fs && (fs->fs_shadow_compare_units & (1 << i))) {
                fs_shadow = true;
             }
          }