From 92ff86db234faae32707fc102a90aa51f8676203 Mon Sep 17 00:00:00 2001 From: Kirill Primak Date: Wed, 31 Jan 2024 11:04:14 +0300 Subject: backend/drm: use wlr_drm_backend.name for fd cloning This also fixes a memleak. --- backend/drm/drm.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'backend') diff --git a/backend/drm/drm.c b/backend/drm/drm.c index b2bebe2d..b4d8a069 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -1820,16 +1820,10 @@ int wlr_drm_backend_get_non_master_fd(struct wlr_backend *backend) { assert(backend); struct wlr_drm_backend *drm = get_drm_backend_from_backend(backend); - char *path = drmGetDeviceNameFromFd2(drm->fd); - if (!path) { - wlr_log(WLR_ERROR, "Failed to get device name from DRM fd"); - return -1; - } + int fd = open(drm->name, O_RDWR | O_CLOEXEC); - int fd = open(path, O_RDWR | O_CLOEXEC); if (fd < 0) { wlr_log_errno(WLR_ERROR, "Unable to clone DRM fd for client fd"); - free(path); return -1; } -- cgit v1.2.3