diff options
author | Hal Gentz <zegentzy@protonmail.com> | 2019-10-10 18:35:50 -0600 |
---|---|---|
committer | Adam Jackson <ajax@nwnk.net> | 2019-10-11 21:57:21 +0000 |
commit | 075a96aa926e6e89795f95a6a59693f44d9ac970 (patch) | |
tree | 81b0142a0494f8325711ab37542bb2f7051e57af /src/egl/drivers/dri2/platform_wayland.c | |
parent | a800d16e4f1589e41e53edf8e8a771a33bb46a6a (diff) | |
download | mesa-075a96aa926e6e89795f95a6a59693f44d9ac970.tar.gz |
egl: Configs w/o double buffering support have no `EGL_WINDOW_BIT`.
When users pass a config to `eglCreateWindowSurface` it requests double
buffering, but if the config doesn't have the appropriate `__DRIconfig`,
`eglCreateWindowSurface` fails with a `EGL_BAD_MATCH`.
Given that such behaviour is completely unacceptable, we drop the
`EGL_WINDOW_BIT` if we don't have at least one `__DRIconfig` supporting double
buffering, otherwise dropping the `EGL_PIXMAP_BIT`.
Fixes: 049f343e8ac "egl: Allow 24-bit visuals for 32-bit RGBA8888 configs"
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=67676
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Hal Gentz <zegentzy@protonmail.com>
Diffstat (limited to 'src/egl/drivers/dri2/platform_wayland.c')
-rw-r--r-- | src/egl/drivers/dri2/platform_wayland.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 71bcb04a77b..3de9695f45e 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -1445,6 +1445,8 @@ dri2_wl_add_configs_for_visuals(_EGLDriver *drv, _EGLDisplay *disp) } } + dri2_finalize_config_surface_types(disp); + for (unsigned i = 0; i < ARRAY_SIZE(format_count); i++) { if (!format_count[i]) { _eglLog(_EGL_DEBUG, "No DRI config supports native format %s", |