summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/d3d12
diff options
context:
space:
mode:
authorErik Faye-Lund <erik.faye-lund@collabora.com>2020-06-16 11:39:07 +0200
committerErik Faye-Lund <erik.faye-lund@collabora.com>2020-11-18 11:20:02 +0100
commit81adf127016a999dcd9b0344f53b74bdba4f09e4 (patch)
treeda26241bcccf46081d030bfe7867eeda9cb2fc6e /src/gallium/winsys/d3d12
parent8bbc31aba2f3e048c335422e041267ff47a87a90 (diff)
d3d12: also reject GDI-supporting pixel-formats
In theory, it's possible to request a GDI-supporting, double buffered pixel-format, and we're not able to support this using the DXGI swapchains. So let's return NULL here in that case as well. Reviewed-by: Charmaine Lee <charmainel@vmware.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7535>
Diffstat (limited to 'src/gallium/winsys/d3d12')
-rw-r--r--src/gallium/winsys/d3d12/wgl/d3d12_wgl_framebuffer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/winsys/d3d12/wgl/d3d12_wgl_framebuffer.cpp b/src/gallium/winsys/d3d12/wgl/d3d12_wgl_framebuffer.cpp
index 1d283d536d0..68b5b7d2b80 100644
--- a/src/gallium/winsys/d3d12/wgl/d3d12_wgl_framebuffer.cpp
+++ b/src/gallium/winsys/d3d12/wgl/d3d12_wgl_framebuffer.cpp
@@ -195,7 +195,8 @@ d3d12_wgl_create_framebuffer(struct pipe_screen *screen,
{
const struct stw_pixelformat_info *pfi =
stw_pixelformat_get_info(iPixelFormat);
- if (!(pfi->pfd.dwFlags & PFD_DOUBLEBUFFER))
+ if (!(pfi->pfd.dwFlags & PFD_DOUBLEBUFFER) ||
+ (pfi->pfd.dwFlags & PFD_SUPPORT_GDI))
return NULL;
struct d3d12_wgl_framebuffer *fb = CALLOC_STRUCT(d3d12_wgl_framebuffer);