From 9cf810c3fb060590a924b12f0ce340e994079202 Mon Sep 17 00:00:00 2001 From: Simon Zeni Date: Thu, 18 Apr 2024 13:27:03 -0400 Subject: [PATCH] backend: close session file on drm backend creation failure --- backend/backend.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/backend/backend.c b/backend/backend.c index e4e8c8d8e..6df7433fe 100644 --- a/backend/backend.c +++ b/backend/backend.c @@ -260,6 +260,8 @@ static struct wlr_backend *attempt_drm_backend(struct wlr_backend *backend, stru for (size_t i = 0; i < (size_t)num_gpus; ++i) { struct wlr_backend *drm = wlr_drm_backend_create(session, gpus[i], primary_drm); if (!drm) { + wlr_session_close_file(session, gpus[i]); + wlr_log(WLR_ERROR, "Failed to create DRM backend"); continue; } @@ -270,6 +272,7 @@ static struct wlr_backend *attempt_drm_backend(struct wlr_backend *backend, stru wlr_multi_backend_add(backend, drm); } + if (!primary_drm) { wlr_log(WLR_ERROR, "Could not successfully create backend on any GPU"); return NULL;