diff options
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/svga/svga_draw_elements.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/src/gallium/drivers/svga/svga_draw_elements.c b/src/gallium/drivers/svga/svga_draw_elements.c index f6603be920a..411b8d9b9f1 100644 --- a/src/gallium/drivers/svga/svga_draw_elements.c +++ b/src/gallium/drivers/svga/svga_draw_elements.c @@ -100,16 +100,14 @@ svga_hwtnl_simple_draw_range_elements(struct svga_hwtnl *hwtnl, unsigned prim, unsigned start, unsigned count) { - struct pipe_resource *upload_buffer = NULL; SVGA3dPrimitiveRange range; unsigned hw_prim; unsigned hw_count; unsigned index_offset = start * index_size; - enum pipe_error ret = PIPE_OK; hw_prim = svga_translate_prim(prim, count, &hw_count); if (hw_count == 0) - goto done; + return PIPE_OK; /* nothing to draw */ /* We should never see user-space buffers in the driver. The vbuf * module should have converted them into real buffers. @@ -124,15 +122,7 @@ svga_hwtnl_simple_draw_range_elements(struct svga_hwtnl *hwtnl, range.indexWidth = index_size; range.indexBias = index_bias; - ret = svga_hwtnl_prim(hwtnl, &range, min_index, max_index, index_buffer); - if (ret != PIPE_OK) - goto done; - -done: - if (upload_buffer) - pipe_resource_reference(&upload_buffer, NULL); - - return ret; + return svga_hwtnl_prim(hwtnl, &range, min_index, max_index, index_buffer); } |