Mesa (master): mesa: Create the default (name==0) buffer texture.

Eric Anholt anholt at kemper.freedesktop.org
Mon Apr 9 21:50:33 UTC 2012


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

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Mar 26 16:49:23 2012 -0700

mesa: Create the default (name==0) buffer texture.

All that should be needed is that it exists.  Fixes segfaults on first
_mesa_update_context() with a samplerBuffer-using shader active but
without a particular buffer texture enabled.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/main/texobj.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c
index d7dee4f..88dc3b1 100644
--- a/src/mesa/main/texobj.c
+++ b/src/mesa/main/texobj.c
@@ -756,6 +756,9 @@ _mesa_get_fallback_texture(struct gl_context *ctx, gl_texture_index tex)
          target = GL_TEXTURE_1D;
          break;
       case TEXTURE_BUFFER_INDEX:
+         dims = 0;
+         target = GL_TEXTURE_BUFFER;
+         break;
       case TEXTURE_EXTERNAL_INDEX:
       default:
          /* no-op */
@@ -794,6 +797,8 @@ _mesa_get_fallback_texture(struct gl_context *ctx, gl_texture_index tex)
                                     GL_RGBA, texFormat);
 
          switch (dims) {
+	 case 0:
+	    break;
          case 1:
             ctx->Driver.TexImage1D(ctx, texImage, GL_RGBA,
                                    width, 0,




More information about the mesa-commit mailing list