aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/state_tracker/st_cb_texture.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-06-01 16:36:19 +0200
committermarha <marha@users.sourceforge.net>2011-06-01 16:36:19 +0200
commit75becbf5e6dcd4667aa88665a1a681fb8620b2c4 (patch)
tree4e6ed6cb893d9ea4c17172b17b1567cfd76cddb8 /mesalib/src/mesa/state_tracker/st_cb_texture.c
parent32ccde45cc1f46a3bd72c44c4f3fcd03742dbb3c (diff)
downloadvcxsrv-75becbf5e6dcd4667aa88665a1a681fb8620b2c4.tar.gz
vcxsrv-75becbf5e6dcd4667aa88665a1a681fb8620b2c4.tar.bz2
vcxsrv-75becbf5e6dcd4667aa88665a1a681fb8620b2c4.zip
mesa pixman xkeyboard-config git update 1 Jun 2011
Diffstat (limited to 'mesalib/src/mesa/state_tracker/st_cb_texture.c')
-rw-r--r--mesalib/src/mesa/state_tracker/st_cb_texture.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_cb_texture.c b/mesalib/src/mesa/state_tracker/st_cb_texture.c
index 9d824b46c..88f62902b 100644
--- a/mesalib/src/mesa/state_tracker/st_cb_texture.c
+++ b/mesalib/src/mesa/state_tracker/st_cb_texture.c
@@ -795,6 +795,11 @@ decompress_with_blit(struct gl_context * ctx, GLenum target, GLint level,
return;
}
+ /* Disable conditional rendering. */
+ if (st->render_condition) {
+ pipe->render_condition(pipe, NULL, 0);
+ }
+
/* blit/render/decompress */
util_blit_pixels_tex(st->blit,
src_view, /* pipe_resource (src) */
@@ -806,6 +811,12 @@ decompress_with_blit(struct gl_context * ctx, GLenum target, GLint level,
0.0, /* z */
PIPE_TEX_MIPFILTER_NEAREST);
+ /* Restore conditional rendering state. */
+ if (st->render_condition) {
+ pipe->render_condition(pipe, st->render_condition,
+ st->condition_mode);
+ }
+
/* map the dst_surface so we can read from it */
tex_xfer = pipe_get_transfer(pipe,
dst_texture, 0, 0,
@@ -1556,6 +1567,11 @@ st_copy_texsubimage(struct gl_context *ctx,
srcY1 = srcY0 + height;
}
+ /* Disable conditional rendering. */
+ if (st->render_condition) {
+ pipe->render_condition(pipe, NULL, 0);
+ }
+
util_blit_pixels_writemask(st->blit,
strb->texture,
strb->surface->u.tex.level,
@@ -1567,6 +1583,13 @@ st_copy_texsubimage(struct gl_context *ctx,
destX + width, destY + height,
0.0, PIPE_TEX_MIPFILTER_NEAREST,
format_writemask);
+
+ /* Restore conditional rendering state. */
+ if (st->render_condition) {
+ pipe->render_condition(pipe, st->render_condition,
+ st->condition_mode);
+ }
+
use_fallback = GL_FALSE;
}