From a2c50b0f4ad16855cf8a2ff2ab4029342f4297dd Mon Sep 17 00:00:00 2001 From: Keith Whitwell Date: Fri, 13 Oct 2006 11:21:55 +0000 Subject: Upload of interleaved arrays currently assumes that position is the first element in the interleaved group. Add a test to catch cases where this isn't true and use per-array uploads instead. Fixes compiz glitches on x64. --- src/mesa/drivers/dri/i965/brw_draw_upload.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c b/src/mesa/drivers/dri/i965/brw_draw_upload.c index 8c6b5a6d2c4..cde0aa6481b 100644 --- a/src/mesa/drivers/dri/i965/brw_draw_upload.c +++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c @@ -435,6 +435,7 @@ GLboolean brw_upload_vertices( struct brw_context *brw, ptr = input->glarray->Ptr; } else if (interleave != input->glarray->StrideB || + (const char *)input->glarray->Ptr - (const char *)ptr < 0 || (const char *)input->glarray->Ptr - (const char *)ptr > interleave) { interleave = 0; } -- cgit v1.2.3