Module: Mesa Branch: master Commit: 644ac2b780366582fe1fee9a677b1f6a508e65dc URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=644ac2b780366582fe1fee9a677b1f6a508e65dc
Author: Emil Velikov <emil.veli...@collabora.com> Date: Thu Jul 13 20:04:33 2017 +0100 egl: propagate EGL_BAD_ATTRIBUTE during EGLImage attr parsing Earlier commit refactored/split the parsing into separate hunks. While no functional change was intended, it did not attribute that different error is set when the attrib. value is incorrect. Fixes: 3ee2be4113d ("egl: split _eglParseImageAttribList into per extension functions") Cc: Michel Dänzer <mic...@daenzer.net> Reported-by: Michel Dänzer <mic...@daenzer.net> Signed-off-by: Emil Velikov <emil.veli...@collabora.com> Tested-by: Michel Dänzer <michel.daen...@amd.com> Reviewed-by: Eric Engestrom <eric.engest...@imgtec.com> --- src/egl/main/eglimage.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/egl/main/eglimage.c b/src/egl/main/eglimage.c index a96075fe55..72a556e8db 100644 --- a/src/egl/main/eglimage.c +++ b/src/egl/main/eglimage.c @@ -302,6 +302,13 @@ _eglParseImageAttribList(_EGLImageAttribs *attrs, _EGLDisplay *dpy, if (err == EGL_SUCCESS) continue; + /* EXT_image_dma_buf_import states that if invalid value is provided for + * its attributes, we should return EGL_BAD_ATTRIBUTE. + * Bail out ASAP, since follow-up calls can return another EGL_BAD error. + */ + if (err == EGL_BAD_ATTRIBUTE) + return _eglError(err, __func__); + err = _eglParseEXTImageDmaBufImportModifiersAttribs(attrs, dpy, attr, val); if (err == EGL_SUCCESS) continue; _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit