summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2022-05-13 15:30:11 -0400
committerMarge Bot <emma+marge@anholt.net>2022-06-01 02:50:32 +0000
commitdebb016d96f23defd80e6e23e5b2fb7e5b1d9ea4 (patch)
treeafe8d73d8e7a2801bad315bb65777747e284ec81
parent9f7029169bc0fd1b0a0f2419b8aba9a1a4461c8e (diff)
st/texture: use base teximage for compute blits
this matches behavior of st_texture_image_map Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16545>
-rw-r--r--src/mesa/state_tracker/st_pbo_compute.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/state_tracker/st_pbo_compute.c b/src/mesa/state_tracker/st_pbo_compute.c
index ade01432f36..263f46a4147 100644
--- a/src/mesa/state_tracker/st_pbo_compute.c
+++ b/src/mesa/state_tracker/st_pbo_compute.c
@@ -1050,10 +1050,10 @@ st_GetTexSubImage_shader(struct gl_context * ctx,
struct st_context *st = st_context(ctx);
struct pipe_screen *screen = st->screen;
struct gl_texture_object *stObj = texImage->TexObject;
- struct pipe_resource *src = stObj->pt;
+ struct pipe_resource *src = texImage->pt;
struct pipe_resource *dst = NULL;
enum pipe_format dst_format, src_format;
- unsigned level = texImage->Level + texImage->TexObject->Attrib.MinLevel;
+ unsigned level = (texImage->pt != stObj->pt ? 0 : texImage->Level) + texImage->TexObject->Attrib.MinLevel;
unsigned layer = texImage->Face + texImage->TexObject->Attrib.MinLayer;
enum pipe_texture_target view_target;