Mesa (master): mesa: Don' t compute an unused texture completeness debug string.

Eric Anholt anholt at kemper.freedesktop.org
Tue Nov 2 21:25:27 UTC 2010


Module: Mesa
Branch: master
Commit: 1210aa75513391779c87e93f009fcf3e52a79cbf
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1210aa75513391779c87e93f009fcf3e52a79cbf

Author: Eric Anholt <eric at anholt.net>
Date:   Tue Nov  2 13:40:39 2010 -0700

mesa: Don't compute an unused texture completeness debug string.

This showed up at about 1% on cairo-gl firefox-talos-gfx, where
glClear() is called while a texture is incomplete.

---

 src/mesa/main/texobj.c |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c
index e08df0f..f0bc447 100644
--- a/src/mesa/main/texobj.c
+++ b/src/mesa/main/texobj.c
@@ -382,12 +382,19 @@ _mesa_reference_texobj(struct gl_texture_object **ptr,
  */
 #if 0
 static void
-incomplete(const struct gl_texture_object *t, const char *why)
+incomplete(const struct gl_texture_object *t, const char *fmt, ...)
 {
-   printf("Texture Obj %d incomplete because: %s\n", t->Name, why);
+   va_list args;
+   char s[100];
+
+   va_start(args, fmt);
+   vsnprintf(s, sizeof(s), fmt, args);
+   va_end(args);
+
+   printf("Texture Obj %d incomplete because: %s\n", t->Name, s);
 }
 #else
-#define incomplete(t, why)
+#define incomplete(t, why, ...)
 #endif
 
 
@@ -416,18 +423,14 @@ _mesa_test_texobj_completeness( const struct gl_context *ctx,
     * value.
     */
    if ((baseLevel < 0) || (baseLevel >= MAX_TEXTURE_LEVELS)) {
-      char s[100];
-      _mesa_snprintf(s, sizeof(s), "base level = %d is invalid", baseLevel);
-      incomplete(t, s);
+      incomplete(t, "base level = %d is invalid", baseLevel);
       t->_Complete = GL_FALSE;
       return;
    }
 
    /* Always need the base level image */
    if (!t->Image[0][baseLevel]) {
-      char s[100];
-      _mesa_snprintf(s, sizeof(s), "Image[baseLevel=%d] == NULL", baseLevel);
-      incomplete(t, s);
+      incomplete(t, "Image[baseLevel=%d] == NULL", baseLevel);
       t->_Complete = GL_FALSE;
       return;
    }




More information about the mesa-commit mailing list