Module: wine Branch: master Commit: f4cbd110d9234a339fede7e005135fd31c926cb1 URL: https://source.winehq.org/git/wine.git/?a=commit;h=f4cbd110d9234a339fede7e00...
Author: Zebediah Figura zfigura@codeweavers.com Date: Mon Nov 29 18:13:41 2021 -0600
wined3d: Always set GL_PIXEL_PACK_BUFFER binding before downloading texture data.
Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wined3d/texture.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index 48202c2142c..d4c7082912b 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -2695,6 +2695,8 @@ static void wined3d_texture_gl_download_data_slow_path(struct wined3d_texture_gl
if (temporary_mem) { + GL_EXTCALL(glBindBuffer(GL_PIXEL_PACK_BUFFER, 0)); + checkGLcall("glBindBuffer"); mem = temporary_mem; } else if (bo) @@ -2705,6 +2707,8 @@ static void wined3d_texture_gl_download_data_slow_path(struct wined3d_texture_gl } else { + GL_EXTCALL(glBindBuffer(GL_PIXEL_PACK_BUFFER, 0)); + checkGLcall("glBindBuffer"); mem = data->addr; }
@@ -2918,6 +2922,11 @@ static void wined3d_texture_gl_download_data(struct wined3d_context *context, checkGLcall("glBindBuffer"); offset += dst_bo->buffer_offset; } + else + { + GL_EXTCALL(glBindBuffer(GL_PIXEL_PACK_BUFFER, 0)); + checkGLcall("glBindBuffer"); + }
if (src_texture->resource.format_flags & WINED3DFMT_FLAG_COMPRESSED) {