egl: handle BAD_NATIVE_PIXMAP further up the stack
The basic (null) check is identical across all backends. Just move it to the top. v2: - Split the WINDOW vs PIXMAP into separate patches - Move check after the dpy and config - dEQP expects so Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
This commit is contained in:
parent
92b23683eb
commit
df8efd5b74
|
@ -246,11 +246,6 @@ dri2_x11_create_surface(_EGLDriver *drv, _EGLDisplay *disp, EGLint type,
|
|||
dri2_surf->drawable, dri2_dpy->screen->root,
|
||||
dri2_surf->base.Width, dri2_surf->base.Height);
|
||||
} else {
|
||||
if (!drawable) {
|
||||
assert(type == EGL_PIXMAP_BIT)
|
||||
_eglError(EGL_BAD_NATIVE_PIXMAP, "dri2_create_surface");
|
||||
goto cleanup_surf;
|
||||
}
|
||||
dri2_surf->drawable = drawable;
|
||||
}
|
||||
|
||||
|
|
|
@ -1021,6 +1021,9 @@ _eglCreatePixmapSurfaceCommon(_EGLDisplay *disp, EGLConfig config,
|
|||
if ((conf->SurfaceType & EGL_PIXMAP_BIT) == 0)
|
||||
RETURN_EGL_ERROR(disp, EGL_BAD_MATCH, EGL_NO_SURFACE);
|
||||
|
||||
if (native_pixmap == NULL)
|
||||
RETURN_EGL_ERROR(disp, EGL_BAD_NATIVE_PIXMAP, EGL_NO_SURFACE);
|
||||
|
||||
surf = drv->API.CreatePixmapSurface(drv, disp, conf, native_pixmap,
|
||||
attrib_list);
|
||||
ret = (surf) ? _eglLinkSurface(surf) : EGL_NO_SURFACE;
|
||||
|
|
Loading…
Reference in New Issue