Module: Mesa Branch: master Commit: f85f025a05cb7267b5f2c0932b46218f21576819 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f85f025a05cb7267b5f2c0932b46218f21576819
Author: Axel Davy <[email protected]> Date: Tue Aug 4 22:09:56 2020 +0200 st/nine: Do not allow depth buffer render targets Without the proposed check, some apps will decide to use depth buffers as render targets. Bug found investigating: https://github.com/iXit/wine-nine-standalone/issues/82 Signed-off-by: Axel Davy <[email protected]> Acked-by: Timur Kristóf <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9177> --- src/gallium/frontends/nine/nine_pipe.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/frontends/nine/nine_pipe.h b/src/gallium/frontends/nine/nine_pipe.h index 6a85c042db7..b5c4f0a3474 100644 --- a/src/gallium/frontends/nine/nine_pipe.h +++ b/src/gallium/frontends/nine/nine_pipe.h @@ -301,6 +301,10 @@ d3d9_to_pipe_format_checked(struct pipe_screen *screen, { enum pipe_format result; + /* We cannot render to depth textures as a render target */ + if (depth_stencil_format(format) && (bindings & PIPE_BIND_RENDER_TARGET)) + return PIPE_FORMAT_NONE; + result = d3d9_to_pipe_format_internal(format); if (result == PIPE_FORMAT_NONE) return PIPE_FORMAT_NONE; _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
