summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2009-09-24 16:06:21 -0600
committerBrian Paul <[email protected]>2009-09-24 16:06:21 -0600
commit29d27229a95837d085db785a2b4abb654457dafa (patch)
tree0a03c9dbe3e55fa9676137750da1ee465379b978 /src/mesa/main
parentfd56bee6c4de28da194333f93b52c40f1deb6163 (diff)
parent940ca2e837efe45caae1cf1d9665f6736347705d (diff)
Merge branch 'mesa_7_6_branch'
Conflicts: src/mesa/vbo/vbo_exec_array.c
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/enable.c7
-rw-r--r--src/mesa/main/mtypes.h1
-rw-r--r--src/mesa/main/texrender.c13
3 files changed, 14 insertions, 7 deletions
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
index 4c1f46102d1..8e6b01f73b9 100644
--- a/src/mesa/main/enable.c
+++ b/src/mesa/main/enable.c
@@ -233,7 +233,7 @@ enable_texture(GLcontext *ctx, GLboolean state, GLbitfield texBit)
const GLbitfield newenabled = state
? (texUnit->Enabled | texBit) : (texUnit->Enabled & ~texBit);
- if (!ctx->DrawBuffer->Visual.rgbMode || texUnit->Enabled == newenabled)
+ if (texUnit->Enabled == newenabled)
return GL_FALSE;
FLUSH_VERTICES(ctx, _NEW_TEXTURE);
@@ -935,11 +935,6 @@ _mesa_set_enable(GLcontext *ctx, GLenum cap, GLboolean state)
/* GL_EXT_depth_bounds_test */
case GL_DEPTH_BOUNDS_TEST_EXT:
CHECK_EXTENSION(EXT_depth_bounds_test, cap);
- if (state && ctx->DrawBuffer->Visual.depthBits == 0) {
- _mesa_warning(ctx,
- "glEnable(GL_DEPTH_BOUNDS_TEST_EXT) but no depth buffer");
- return;
- }
if (ctx->Depth.BoundsTest == state)
return;
FLUSH_VERTICES(ctx, _NEW_DEPTH);
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index ae169fb9db6..54fa8981ddd 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -2080,6 +2080,7 @@ struct gl_shader_state
GLboolean EmitContReturn; /**< Emit CONT/RET opcodes? */
GLboolean EmitCondCodes; /**< Use condition codes? */
GLboolean EmitComments; /**< Annotated instructions */
+ GLboolean EmitNVTempInitialization; /**< 0-fill NV temp registers */
void *MemPool;
GLbitfield Flags; /**< Mask of GLSL_x flags */
struct gl_sl_pragmas DefaultPragmas; /**< Default #pragma settings */
diff --git a/src/mesa/main/texrender.c b/src/mesa/main/texrender.c
index cc74d58fbd1..53be83b05ce 100644
--- a/src/mesa/main/texrender.c
+++ b/src/mesa/main/texrender.c
@@ -398,6 +398,14 @@ texture_put_mono_values(GLcontext *ctx, struct gl_renderbuffer *rb,
static void
+store_nop(struct gl_texture_image *texImage,
+ GLint col, GLint row, GLint img,
+ const void *texel)
+{
+}
+
+
+static void
delete_texture_wrapper(struct gl_renderbuffer *rb)
{
ASSERT(rb->RefCount == 0);
@@ -462,7 +470,10 @@ update_wrapper(GLcontext *ctx, const struct gl_renderbuffer_attachment *att)
ASSERT(trb->TexImage);
trb->Store = trb->TexImage->TexFormat->StoreTexel;
- ASSERT(trb->Store);
+ if (!trb->Store) {
+ /* we'll never draw into some textures (compressed formats) */
+ trb->Store = store_nop;
+ }
if (att->Texture->Target == GL_TEXTURE_1D_ARRAY_EXT) {
trb->Yoffset = att->Zoffset;