Mesa (master): mesa: remove _mesa_set_vp_override() from _mesa_Bitmap()
Brian Paul
brianp at kemper.freedesktop.org
Tue Aug 11 14:39:27 UTC 2009
Module: Mesa
Branch: master
Commit: 20e4421fe3e938f5904d53661ce8d47163db491b
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=20e4421fe3e938f5904d53661ce8d47163db491b
Author: Brian Paul <brianp at vmware.com>
Date: Tue Aug 11 08:37:22 2009 -0600
mesa: remove _mesa_set_vp_override() from _mesa_Bitmap()
This reverts part of commit 2c9812e3d346eb07180da520909b142e8afc1c59.
The calls to _mesa_set_vp_override() were causing extra state validation
and caused the gallium state tracker's bitmap cache to get flushed on
every call.
---
src/mesa/main/drawpix.c | 16 ++++------------
1 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/src/mesa/main/drawpix.c b/src/mesa/main/drawpix.c
index c07de9c..6d31f32 100644
--- a/src/mesa/main/drawpix.c
+++ b/src/mesa/main/drawpix.c
@@ -239,11 +239,6 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
return; /* do nothing */
}
- /* We're not using the current vertex program, and the driver may install
- * it's own.
- */
- _mesa_set_vp_override(ctx, GL_TRUE);
-
if (ctx->NewState) {
_mesa_update_state(ctx);
}
@@ -251,13 +246,13 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
if (!valid_fragment_program(ctx)) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glBitmap (invalid fragment program)");
- goto end;
+ return;
}
if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) {
_mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT,
"glBitmap(incomplete framebuffer)");
- goto end;
+ return;
}
if (ctx->RenderMode == GL_RENDER) {
@@ -273,12 +268,12 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
(GLvoid *) bitmap)) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glBitmap(invalid PBO access)");
- goto end;
+ return;
}
if (_mesa_bufferobj_mapped(ctx->Unpack.BufferObj)) {
/* buffer is mapped - that's an error */
_mesa_error(ctx, GL_INVALID_OPERATION, "glBitmap(PBO is mapped)");
- goto end;
+ return;
}
}
@@ -303,7 +298,4 @@ _mesa_Bitmap( GLsizei width, GLsizei height,
/* update raster position */
ctx->Current.RasterPos[0] += xmove;
ctx->Current.RasterPos[1] += ymove;
-
-end:
- _mesa_set_vp_override(ctx, GL_FALSE);
}
More information about the mesa-commit
mailing list