softpipe: added some null pointer checks
authorBrian Paul <brianp@vmware.com>
Tue, 18 Jan 2011 16:58:55 +0000 (09:58 -0700)
committerBrian Paul <brianp@vmware.com>
Tue, 18 Jan 2011 16:59:28 +0000 (09:59 -0700)
This shouldn't really be needed but it may help with
http://bugs.freedesktop.org/show_bug.cgi?id=32309

src/gallium/drivers/softpipe/sp_state_derived.c

index f65bf9a..f9590eb 100644 (file)
@@ -201,7 +201,7 @@ update_tgsi_samplers( struct softpipe_context *softpipe )
 
    for (i = 0; i < PIPE_MAX_SAMPLERS; i++) {
       struct softpipe_tex_tile_cache *tc = softpipe->fragment_tex_cache[i];
-      if (tc->texture) {
+      if (tc && tc->texture) {
          struct softpipe_resource *spt = softpipe_resource(tc->texture);
          if (spt->timestamp != tc->timestamp) {
            sp_tex_tile_cache_validate_texture( tc );
@@ -216,7 +216,7 @@ update_tgsi_samplers( struct softpipe_context *softpipe )
    for (i = 0; i < PIPE_MAX_VERTEX_SAMPLERS; i++) {
       struct softpipe_tex_tile_cache *tc = softpipe->vertex_tex_cache[i];
 
-      if (tc->texture) {
+      if (tc && tc->texture) {
          struct softpipe_resource *spt = softpipe_resource(tc->texture);
 
          if (spt->timestamp != tc->timestamp) {
@@ -229,7 +229,7 @@ update_tgsi_samplers( struct softpipe_context *softpipe )
    for (i = 0; i < PIPE_MAX_GEOMETRY_SAMPLERS; i++) {
       struct softpipe_tex_tile_cache *tc = softpipe->geometry_tex_cache[i];
 
-      if (tc->texture) {
+      if (tc && tc->texture) {
          struct softpipe_resource *spt = softpipe_resource(tc->texture);
 
          if (spt->timestamp != tc->timestamp) {