xwayland/glamor: Drop expecting_event bailing from xwl_drm_handle_device
If we bail without decrementing xwl_screen->expecting_event,
xwl_screen_init will keep waiting indefinitely for an event which never
arrives.
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1648
Fixes: 2f113d68f6
("xwayland: Add glamor and DRI3 support")
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1739>
This commit is contained in:
parent
a1b5aa5a7f
commit
375c35a5e4
|
@ -1318,6 +1318,7 @@ xwl_drm_handle_device(void *data, struct wl_drm *drm, const char *device)
|
|||
|
||||
if (!xwl_gbm->device_name) {
|
||||
xwl_glamor_gbm_cleanup(xwl_screen);
|
||||
xwl_screen->expecting_event--;
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1326,12 +1327,14 @@ xwl_drm_handle_device(void *data, struct wl_drm *drm, const char *device)
|
|||
ErrorF("wayland-egl: could not open %s (%s)\n",
|
||||
xwl_gbm->device_name, strerror(errno));
|
||||
xwl_glamor_gbm_cleanup(xwl_screen);
|
||||
xwl_screen->expecting_event--;
|
||||
return;
|
||||
}
|
||||
|
||||
if (drmGetDevice2(xwl_gbm->drm_fd, 0, &xwl_gbm->device) != 0) {
|
||||
ErrorF("wayland-egl: Could not fetch DRM device %s\n",
|
||||
xwl_gbm->device_name);
|
||||
xwl_screen->expecting_event--;
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue