svga: add null vs pointer check in update_need_pipeline()
authorBrian Paul <brianp@vmware.com>
Fri, 9 Mar 2012 15:16:26 +0000 (08:16 -0700)
committerBrian Paul <brianp@vmware.com>
Fri, 9 Mar 2012 15:25:18 +0000 (08:25 -0700)
Based on a patch submitted by Vic Lee.  The other part of his patch
which checked the fs pointer wasn't needed.

This fixes a crash when clear() is called before any VS or FS is set.
But this can only happen when the driver is used without the Mesa
state tracker.

NOTE: This is a candidate for the 8.0 branch.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
src/gallium/drivers/svga/svga_state_need_swtnl.c

index 32355d136cde4da2a6ad376f065731ea3b532d0a..ce4db8da5df071c8c64ea8f02867515047d62d44 100644 (file)
@@ -136,7 +136,7 @@ update_need_pipeline( struct svga_context *svga,
 
    /* EDGEFLAGS
     */
-    if (vs->base.info.writes_edgeflag) {
+    if (vs && vs->base.info.writes_edgeflag) {
       SVGA_DBG(DEBUG_SWTNL, "%s: edgeflags\n", __FUNCTION__);
       need_pipeline = TRUE;
    }