From 9e8a6f801d360f85cc7bb53b85f15129b07b26da Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Wed, 19 May 2010 18:46:45 +0200 Subject: r600g: various fixes - enabled flushing a buffer more than once - enabled the blitter for r600_clear - added some more colors to r600_is_format_supported (copied from r600_conv_pipe_format) - r600_set_framebuffer_state now sets rctx->fb_state - more states are saved before a blit (had to add some accounting for the viewport and the vertex elements state) - fixed a few errors with reference counting --- src/gallium/drivers/r600/r600_draw.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/gallium/drivers/r600/r600_draw.c') diff --git a/src/gallium/drivers/r600/r600_draw.c b/src/gallium/drivers/r600/r600_draw.c index aa254faf15..26cc94f857 100644 --- a/src/gallium/drivers/r600/r600_draw.c +++ b/src/gallium/drivers/r600/r600_draw.c @@ -99,11 +99,11 @@ static int r600_draw_common(struct r600_draw *draw) if (r) return r; - for (i = 0 ; i < rctx->nvertex_element; i++) { - j = rctx->vertex_element[i].vertex_buffer_index; + for (i = 0 ; i < rctx->vertex_elements->count; i++) { + j = rctx->vertex_elements->elements[i].vertex_buffer_index; rbuffer = (struct r600_buffer*)rctx->vertex_buffer[j].buffer; - offset = rctx->vertex_element[i].src_offset + rctx->vertex_buffer[j].buffer_offset; - r = r600_conv_pipe_format(rctx->vertex_element[i].src_format, &format); + offset = rctx->vertex_elements->elements[i].src_offset + rctx->vertex_buffer[j].buffer_offset; + r = r600_conv_pipe_format(rctx->vertex_elements->elements[i].src_format, &format); if (r) return r; vs_resource = radeon_state(rscreen->rw, R600_VS_RESOURCE_TYPE, R600_VS_RESOURCE + i); -- cgit v1.2.3