From: Tapani Pälli Date: Mon, 26 Sep 2016 07:03:32 +0000 (+0300) Subject: egl: stop claiming support for pbuffer + msaa X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4d6d55deef291b489af4d7870c6f5eb223c8da5d;p=mesa.git egl: stop claiming support for pbuffer + msaa This fixes a crash in egl-create-msaa-pbuffer-surface Piglit test and same crash in many dEQP EGL tests. I also found that some Qt example did a workaround because of this crash: https://bugreports.qt.io/browse/QTBUG-47509 v2: Ian pointed out that v1 removed support for all multisample configs, including window ones. This one removes pbuffer bit when adding configs, now only pbuffer+msaa gets rejected and window+msaa continues to work. Fixed also comment (Emil) Signed-off-by: Tapani Pälli Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Marek Olšák Reviewed-by: Emil Velikov Reviewed-by: Ian Romanick --- diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c index 8e376e32d7c..803627db8c8 100644 --- a/src/egl/drivers/dri2/egl_dri2.c +++ b/src/egl/drivers/dri2/egl_dri2.c @@ -320,6 +320,15 @@ dri2_add_config(_EGLDisplay *disp, const __DRIconfig *dri_config, int id, surface_type &= ~EGL_PIXMAP_BIT; } + /* No support for pbuffer + MSAA for now. + * + * XXX TODO: pbuffer + MSAA does not work and causes crashes. + * See QT bugreport: https://bugreports.qt.io/browse/QTBUG-47509 + */ + if (base.Samples) { + surface_type &= ~EGL_PBUFFER_BIT; + } + conf->base.SurfaceType |= surface_type; return conf;