llvmpipe: always set ssbo data pointers for draw
skipping these would lead to reading the previously-set data if a null buffer was set after a valid buffer cc: mesa-stable Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16137>
This commit is contained in:
parent
f1d1371e51
commit
6a219f318a
|
@ -1345,10 +1345,9 @@ try_update_scene_state( struct lp_setup_context *setup )
|
|||
struct pipe_resource *buffer = setup->ssbos[i].current.buffer;
|
||||
const ubyte *current_data = NULL;
|
||||
|
||||
if (!buffer)
|
||||
continue;
|
||||
/* resource buffer */
|
||||
current_data = (ubyte *) llvmpipe_resource_data(buffer);
|
||||
if (buffer)
|
||||
current_data = (ubyte *) llvmpipe_resource_data(buffer);
|
||||
if (current_data) {
|
||||
current_data += setup->ssbos[i].current.buffer_offset;
|
||||
|
||||
|
|
|
@ -1258,10 +1258,9 @@ update_csctx_ssbo(struct llvmpipe_context *llvmpipe)
|
|||
struct pipe_resource *buffer = csctx->ssbos[i].current.buffer;
|
||||
const ubyte *current_data = NULL;
|
||||
|
||||
if (!buffer)
|
||||
continue;
|
||||
/* resource buffer */
|
||||
current_data = (ubyte *) llvmpipe_resource_data(buffer);
|
||||
if (buffer)
|
||||
current_data = (ubyte *) llvmpipe_resource_data(buffer);
|
||||
if (current_data) {
|
||||
current_data += csctx->ssbos[i].current.buffer_offset;
|
||||
|
||||
|
|
Loading…
Reference in New Issue