The 2.0 spec doesn't make things extremely clear, but expresses itself in
pseudocode: If the vertex array isn't enabled, then nothing is called that
provokes drawing.  The manifestation of this bug was that a client drawing
with no arrays enabled would get into the driver with a request to
draw with _MaxElements being 0 and no inputs to the ff vertex program (since
no arrays were enabled, so nothing was varying), and the driver failing
all over the place.

Bug #19911.
---
 src/mesa/main/api_validate.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index 5c8955d..5253ae3 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -87,9 +87,8 @@ check_valid_to_render(GLcontext *ctx, char *function)
       return GL_FALSE;
    }
 
-   /* Always need vertex positions, unless a vertex program is in use */
-   if (!ctx->VertexProgram._Current &&
-       !ctx->Array.ArrayObj->Vertex.Enabled &&
+   /* Always need vertex positions */
+   if (!ctx->Array.ArrayObj->Vertex.Enabled &&
        !ctx->Array.ArrayObj->VertexAttrib[0].Enabled)
       return GL_FALSE;
 
-- 
1.5.6.5


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to