s/Tungsten Graphics/VMware/
[mesa.git] / src / mesa / vbo / vbo_split.c
index ef205a3bb1fb47532131c6cc638eb2cc4a81f697..2f957462a8c0a95437492590e196499b96665f10 100644 (file)
@@ -1,7 +1,6 @@
 
 /*
  * Mesa 3-D graphics library
- * Version:  6.5
  *
  * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
  *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
  *
  * Authors:
- *    Keith Whitwell <keith@tungstengraphics.com>
+ *    Keith Whitwell <keithw@vmware.com>
  */
 
 /* Deal with hardware and/or swtnl maximums:
  * limitations on drivers which want to use it as a fallback path.
  */
 
-#include "glheader.h"
-#include "imports.h"
-#include "mtypes.h"
+#include "main/glheader.h"
+#include "main/imports.h"
+#include "main/mtypes.h"
+#include "main/macros.h"
 
 #include "vbo_split.h"
 #include "vbo.h"
@@ -97,7 +98,7 @@ GLboolean split_prim_inplace(GLenum mode, GLuint *first, GLuint *incr)
 
 
 
-void vbo_split_prims( GLcontext *ctx,
+void vbo_split_prims( struct gl_context *ctx,
                      const struct gl_client_array *arrays[],
                      const struct _mesa_prim *prim,
                      GLuint nr_prims,
@@ -107,14 +108,20 @@ void vbo_split_prims( GLcontext *ctx,
                      vbo_draw_func draw,
                      const struct split_limits *limits )
 {
-  
+   GLint max_basevertex = prim->basevertex;
+   GLuint i;
+
+   for (i = 1; i < nr_prims; i++)
+      max_basevertex = MAX2(max_basevertex, prim[i].basevertex);
+
+   /* XXX max_basevertex is computed but not used, why? */
+
    if (ib) {
       if (limits->max_indices == 0) {
         /* Could traverse the indices, re-emitting vertices in turn.
          * But it's hard to see why this case would be needed - for
          * software tnl, it is better to convert to non-indexed
-         * rendering after transformation is complete, as is done in
-         * the t_dd_rendertmp.h templates.  Are there any devices
+         * rendering after transformation is complete.  Are there any devices
          * with hardware tnl that cannot do indexed rendering?
          *
          * For now, this path is disabled.