On 09/26/2016 12:41 AM, Tapani Pälli wrote: > 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
Eh... I would have to double-check, but I thought each config had a set of bits that described the kinds of surfaces (window, pixmap, or pbuffer) it could be used with. I know this is how GLX works. Assuming that's the case, the correct fix is to never set the the pbuffer bit for configs that have multisample. If I'm reading this patch correctly, it looks like it will remove those configs completely. We still want to have multisample windows. Am I understanding this correctly? > > Signed-off-by: Tapani Pälli <tapani.pa...@intel.com> > --- > > This is RFC as I'm not sure if we are supposed to support this. I tried > to verify overall pbuffer situation with some mesa-demos using pbuffer > but those are not working for me at all with or without my patch. > > src/egl/main/eglconfig.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/src/egl/main/eglconfig.c b/src/egl/main/eglconfig.c > index 6161d26..20cf9d4 100644 > --- a/src/egl/main/eglconfig.c > +++ b/src/egl/main/eglconfig.c > @@ -407,6 +407,11 @@ _eglValidateConfig(const _EGLConfig *conf, EGLBoolean > for_matching) > return EGL_FALSE; > } > > + /* pbuffer with MSAA not supported */ > + if (conf->SurfaceType & EGL_PBUFFER_BIT && conf->Samples) { > + return EGL_FALSE; > + } > + > if (!(conf->SurfaceType & EGL_WINDOW_BIT)) { > if (conf->NativeVisualID != 0 || conf->NativeVisualType != EGL_NONE) > valid = EGL_FALSE; > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev