summaryrefslogtreecommitdiff
path: root/src/mesa/main
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@tungstengraphics.com>2008-12-15 11:16:03 +0000
committerAlan Hourihane <alanh@tungstengraphics.com>2008-12-15 11:16:03 +0000
commita22d865f93a1db7f72e0bfe216810f67bf4c2f2c (patch)
treeed66dfad2f0907967e4c5e40a338b6a143b1dd7b /src/mesa/main
parentf72848a09a9d3069705fbe8e4daa29b9918ea56e (diff)
parente72a44215312ae1f3c812ba28e47b4aec3589de9 (diff)
Merge commit 'origin/master' into gallium-0.2
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/texobj.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c
index 2a54ff7ff9..d8e8b559f5 100644
--- a/src/mesa/main/texobj.c
+++ b/src/mesa/main/texobj.c
@@ -383,6 +383,18 @@ _mesa_test_texobj_completeness( const GLcontext *ctx,
t->_Complete = GL_TRUE; /* be optimistic */
+ /* Detect cases where the application set the base level to an invalid
+ * value.
+ */
+ if ((baseLevel < 0) || (baseLevel > MAX_TEXTURE_LEVELS)) {
+ char s[100];
+ _mesa_sprintf(s, "obj %p (%d) base level = %d is invalid",
+ (void *) t, t->Name, baseLevel);
+ incomplete(t, s);
+ t->_Complete = GL_FALSE;
+ return;
+ }
+
/* Always need the base level image */
if (!t->Image[0][baseLevel]) {
char s[100];