There is an assertion failure when running glxgears with gallium3d.
This is the fix as suggested by Jakob Bornecrantz on irc.

Mike.
From 255453afadbfe7b5b5957c0ca42f86eaff30972a Mon Sep 17 00:00:00 2001
From: Mike Kaplinksiy <[email protected]>
Date: Wed, 27 May 2009 23:17:09 -0400
Subject: Fix assertion failure at fetch_emit_prepare

---
 src/gallium/auxiliary/draw/draw_pt_fetch_emit.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
index 6b7d02a..6ace7a4 100644
--- a/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
+++ b/src/gallium/auxiliary/draw/draw_pt_fetch_emit.c
@@ -130,6 +130,9 @@ static void fetch_emit_prepare( struct draw_pt_middle_end *middle,
       unsigned output_format;
 
       switch (vinfo->attrib[i].emit) {
+      case EMIT_4UB:
+	 output_format = PIPE_FORMAT_R8G8B8A8_UNORM;
+	 emit_sz = 4 * sizeof(unsigned char);
       case EMIT_4F:
 	 output_format = PIPE_FORMAT_R32G32B32A32_FLOAT;
 	 emit_sz = 4 * sizeof(float);
@@ -153,6 +156,8 @@ static void fetch_emit_prepare( struct draw_pt_middle_end *middle,
 	 output_format = PIPE_FORMAT_R32_FLOAT;
 	 emit_sz = 1 * sizeof(float);
          break;
+      case EMIT_OMIT:
+         continue;
       default:
          assert(0);
 	 output_format = PIPE_FORMAT_NONE;
-- 
1.6.3.1

------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT 
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp as they present alongside digital heavyweights like Barbarian 
Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycat-com 
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to