On 02.06.2016 22:53, Ilia Mirkin wrote:
On Thu, Jun 2, 2016 at 4:50 PM, Nicolai Hähnle <nhaeh...@gmail.com> wrote:
From: Nicolai Hähnle <nicolai.haeh...@amd.com>
Found by inspection after seeing
https://bugs.freedesktop.org/show_bug.cgi?id=96343
---
src/mesa/state_tracker/st_cb_readpixels.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/state_tracker/st_cb_readpixels.c
b/src/mesa/state_tracker/st_cb_readpixels.c
index 6df3a39..f42ff20 100644
--- a/src/mesa/state_tracker/st_cb_readpixels.c
+++ b/src/mesa/state_tracker/st_cb_readpixels.c
@@ -170,6 +170,8 @@ try_pbo_readpixels(struct st_context *st, struct
st_renderbuffer *strb,
image.u.buf.last_element = addr.last_element;
cso_set_shader_images(cso, PIPE_SHADER_FRAGMENT, 0, 1, &image);
+
+ pipe_resource_reference(&image.resource, NULL);
Instead would it be cleaner to not do this at all, and just do
image.resource = addr.buffer
above, instead of doing the whole reference thing. As far as I can
tell, you're not protecting against anything by grabbing the extra
reference.
Sure, that works as well. Somehow I was thinking "pipe_image_view holds
a reference", but now that I actually look at st_atom_image.c, it also
doesn't do this. I'll change it.
Nicolai
-ilia
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev