softpipe: don't assert on illegal wrap mode for rect textures
authorRoland Scheidegger <sroland@vmware.com>
Wed, 27 Aug 2014 22:43:32 +0000 (00:43 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Fri, 29 Aug 2014 23:17:47 +0000 (01:17 +0200)
piglit tex-miplevel-selection nowadays doesn't use repeat wrap mode due to
sampler objects any longer, however at the time of the clear the wrap mode
is still illegal and at this point we get to verify the state, including
samplers (even though they won't get used), and because mesa doesn't treat
it as an incomplete texture as the spec says it should, we hit the assertion.
Just warn about this for now instead.
Gets crashes down from 44 to 14 in a piglit run (all were in various tests of
tex-miplevel-selection with texture rectangles). Though just about all
tex-miplevel-selection tests fail anyway for other reasons.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
src/gallium/drivers/softpipe/sp_tex_sample.c

index 2d59766..91f2701 100644 (file)
@@ -2586,7 +2586,7 @@ get_nearest_unorm_wrap(unsigned mode)
    case PIPE_TEX_WRAP_CLAMP_TO_BORDER:
       return wrap_nearest_unorm_clamp_to_border;
    default:
-      assert(0);
+      debug_printf("illegal wrap mode %d with non-normalized coords\n", mode);
       return wrap_nearest_unorm_clamp;
    }
 }
@@ -2630,7 +2630,7 @@ get_linear_unorm_wrap(unsigned mode)
    case PIPE_TEX_WRAP_CLAMP_TO_BORDER:
       return wrap_linear_unorm_clamp_to_border;
    default:
-      assert(0);
+      debug_printf("illegal wrap mode %d with non-normalized coords\n", mode);
       return wrap_linear_unorm_clamp;
    }
 }