backend: Do not attempt DRM on X11/WL failure
This can really mess with the session if logind is not being used, and it's going to always fail anyway.
This commit is contained in:
parent
6c649bab53
commit
b58e8451b8
|
@ -297,22 +297,26 @@ struct wlr_backend *wlr_backend_autocreate(struct wl_display *display,
|
|||
getenv("WAYLAND_SOCKET")) {
|
||||
struct wlr_backend *wl_backend = attempt_wl_backend(display,
|
||||
create_renderer_func);
|
||||
if (wl_backend) {
|
||||
if (!wl_backend) {
|
||||
goto error;
|
||||
}
|
||||
|
||||
wlr_multi_backend_add(backend, wl_backend);
|
||||
return backend;
|
||||
}
|
||||
}
|
||||
|
||||
#if WLR_HAS_X11_BACKEND
|
||||
const char *x11_display = getenv("DISPLAY");
|
||||
if (x11_display) {
|
||||
struct wlr_backend *x11_backend =
|
||||
attempt_x11_backend(display, x11_display, create_renderer_func);
|
||||
if (x11_backend) {
|
||||
if (!x11_backend) {
|
||||
goto error;
|
||||
}
|
||||
|
||||
wlr_multi_backend_add(backend, x11_backend);
|
||||
return backend;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
// Attempt DRM+libinput
|
||||
|
@ -344,4 +348,8 @@ struct wlr_backend *wlr_backend_autocreate(struct wl_display *display,
|
|||
}
|
||||
|
||||
return backend;
|
||||
|
||||
error:
|
||||
wlr_backend_destroy(backend);
|
||||
return NULL;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue