summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
diff options
context:
space:
mode:
authorRoland Scheidegger <sroland@tungstengraphics.com>2007-07-16 17:41:22 +0200
committerRoland Scheidegger <sroland@tungstengraphics.com>2007-07-16 17:41:22 +0200
commit894557d625b6813dfb23602b96fde6a59d3db54e (patch)
treef5b94aeb19ee42b4327be5e75dc9e92616c5422f /src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
parent56cbdfd7d541e5d99b7e7c4fb7b03ac6ac1536a1 (diff)
get rid of more cliprects...
Diffstat (limited to 'src/mesa/drivers/dri/i915tex/intel_pixel_draw.c')
-rw-r--r--src/mesa/drivers/dri/i915tex/intel_pixel_draw.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c b/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
index b1ecf2b0ce..1c83028d8a 100644
--- a/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
+++ b/src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
@@ -421,10 +421,17 @@ intelDrawPixels(GLcontext * ctx,
* wise happily run the fragment program on each pixel in the image).
*/
struct gl_fragment_program *fpSave = ctx->FragmentProgram._Current;
+ /* can't just set current frag prog to 0 here as on buffer resize
+ we'll get new state checks which will segfault (actually don't get them
+ with current priv buffers). Remains a hack. */
ctx->FragmentProgram._Current = NULL;
+ ctx->FragmentProgram._UseTexEnvProgram = GL_FALSE;
+ ctx->FragmentProgram._Active = GL_FALSE;
_swrast_DrawPixels( ctx, x, y, width, height, format, type,
unpack, pixels );
ctx->FragmentProgram._Current = fpSave;
+ ctx->FragmentProgram._UseTexEnvProgram = GL_TRUE;
+ ctx->FragmentProgram._Active = GL_TRUE;
}
else {
_swrast_DrawPixels( ctx, x, y, width, height, format, type,