st/mesa: Fix grabbing the wrong variant if glDrawPixels is called
[mesa.git] / src / mesa / state_tracker / st_atom_shader.c
index 46f2bd7e3bf98474607196171427e1fbed905c1a..b5ba33a48845d8ade1d3851c886efc8b552aa7e1 100644 (file)
@@ -108,7 +108,9 @@ st_update_fp( struct st_context *st )
    if (st->shader_has_one_variant[MESA_SHADER_FRAGMENT] &&
        !stfp->ati_fs && /* ATI_fragment_shader always has multiple variants */
        !stfp->Base.ExternalSamplersUsed && /* external samplers need variants */
-       stfp->variants) {
+       stfp->variants &&
+       !stfp->variants->key.drawpixels &&
+       !stfp->variants->key.bitmap) {
       shader = stfp->variants->driver_shader;
    } else {
       memset(&key, 0, sizeof(key));