gallium: temporary check for > 65535 vertices
This commit is contained in:
@@ -399,6 +399,8 @@ vbuf_alloc_vertices( struct vbuf_stage *vbuf )
|
||||
* and it will flush itself if necessary to do so. If this does
|
||||
* fail, we are basically without usable hardware.
|
||||
*/
|
||||
assert(vbuf->max_vertices < 65536);
|
||||
|
||||
vbuf->vertices = (uint *) vbuf->render->allocate_vertices(vbuf->render,
|
||||
(ushort) vbuf->vertex_size,
|
||||
(ushort) vbuf->max_vertices);
|
||||
|
||||
@@ -165,6 +165,9 @@ void draw_pt_emit( struct pt_emit *emit,
|
||||
*/
|
||||
draw_do_flush( draw, DRAW_FLUSH_BACKEND );
|
||||
|
||||
if (count > 65535) /* FIXME */
|
||||
return FALSE;
|
||||
|
||||
/* XXX: and work out some way to coordinate the render primitive
|
||||
* between vbuf.c and here...
|
||||
*/
|
||||
|
||||
@@ -338,6 +338,9 @@ static boolean fetch_emit_run_linear_elts( struct draw_pt_middle_end *middle,
|
||||
*/
|
||||
draw_do_flush( draw, DRAW_FLUSH_BACKEND );
|
||||
|
||||
if (count > 65535) /* FIXME */
|
||||
return FALSE;
|
||||
|
||||
hw_verts = draw->render->allocate_vertices( draw->render,
|
||||
(ushort)feme->translate->key.output_stride,
|
||||
(ushort)count );
|
||||
|
||||
@@ -234,6 +234,9 @@ static void fse_run_linear( struct draw_pt_middle_end *middle,
|
||||
*/
|
||||
draw_do_flush( draw, DRAW_FLUSH_BACKEND );
|
||||
|
||||
if (count > 65535) /* FIXME */
|
||||
return FALSE;
|
||||
|
||||
hw_verts = draw->render->allocate_vertices( draw->render,
|
||||
(ushort)fse->key.output_stride,
|
||||
(ushort)count );
|
||||
|
||||
Reference in New Issue
Block a user