From bda9e1f85685e1ec71b7d30ad5f4aead05e6caae Mon Sep 17 00:00:00 2001 From: Pierre-Eric Pelloux-Prayer Date: Fri, 13 Sep 2024 15:34:52 +0200 Subject: [PATCH] radeonsi: check the pointer before adding an offset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Otherwise callers can't detect errors. Reviewed-by: Marek Olšák Part-of: --- src/gallium/drivers/radeonsi/si_shader.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 6bf55088ae2..f71e895c4c6 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -954,9 +954,13 @@ static void *pre_upload_binary(struct si_screen *sscreen, struct si_shader *shad return ret; } else { - return sscreen->ws->buffer_map(sscreen->ws, + void *ptr = sscreen->ws->buffer_map(sscreen->ws, shader->bo->buf, NULL, - PIPE_MAP_READ_WRITE | PIPE_MAP_UNSYNCHRONIZED | RADEON_MAP_TEMPORARY) + bo_offset; + PIPE_MAP_READ_WRITE | PIPE_MAP_UNSYNCHRONIZED | RADEON_MAP_TEMPORARY); + if (!ptr) + return NULL; + + return ptr + bo_offset; } }