Index: vertexdomain.py
===================================================================
--- vertexdomain.py	(revisi¢n: 2518)
+++ vertexdomain.py	(copia de trabajo)
@@ -59,6 +59,10 @@
 __docformat__ = 'restructuredtext'
 __version__ = '$Id: $'
 
+# for debugging issue 423
+taken_VBO_branch_reported = False
+taken_glMulti_branch_reported = False
+
 import ctypes
 import re
 
@@ -657,6 +661,7 @@
                 Vertex list to draw, or ``None`` for all lists in this domain.
 
         '''
+        global taken_VBO_branch_reported, taken_glMulti_branch_reported
         glPushClientAttrib(GL_CLIENT_VERTEX_ARRAY_BIT)
         for buffer, attributes in self.buffer_attributes:
             buffer.bind()
@@ -680,10 +685,20 @@
                 # Common case
                 glDrawElements(mode, sizes[0], self.index_gl_type,
                     self.index_buffer.ptr + starts[0])
-            elif gl_info.have_version(1, 4):
+            elif  gl_info.have_version(1, 4): # replace by 0: for workaround issue 423
+                if not taken_glMulti_branch_reported:
+                    print '*** Using glMultiDraw'
+                    taken_glMulti_branch_reported = True
                 if not isinstance(self.index_buffer, 
                                   vertexbuffer.VertexBufferObject):
+                    if not taken_VBO_branch_reported:
+                        print '*** index_buffer is VBO'
+                        taken_VBO_branch_reported = True
                     starts = [s * self.index_element_size + self.index_buffer.ptr for s in starts]
+                else:
+                    if not taken_VBO_branch_reported:
+                        print '*** buffer is not VBO'
+                        taken_VBO_branch_reported = True
                 starts = cast((GLuint * primcount)(*starts), POINTER(c_void_p))
                 sizes = (GLsizei * primcount)(*sizes)
                 glMultiDrawElements(mode, sizes, GL_UNSIGNED_INT, starts,
