diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index 1c2d9540da9..242cf5891d9 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -2045,11 +2045,12 @@ dri2_initialize_wayland_drm(_EGLDisplay *disp) if (!dri2_dpy) return _eglError(EGL_BAD_ALLOC, "eglInitialize"); + dri2_dpy->fd = -1; + disp->DriverData = (void *) dri2_dpy; + if (dri2_wl_formats_init(&dri2_dpy->formats) < 0) goto cleanup; - dri2_dpy->fd = -1; - disp->DriverData = (void *) dri2_dpy; if (disp->PlatformDisplay == NULL) { dri2_dpy->wl_dpy = wl_display_connect(NULL); if (dri2_dpy->wl_dpy == NULL)