From: Emil Velikov Date: Mon, 7 Sep 2015 08:53:53 +0000 (+0100) Subject: egl/dri2/drm: compact existing device mgmt X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=bd5bcb5b8ca043a3908d7a70ab1193efc1db278d;p=mesa.git egl/dri2/drm: compact existing device mgmt Move the fcntl(dupfd_cloexec) to the else branch where it belongs. Otherwise it's not immediately obvious that the code is hit, only when an existing device is used. Signed-off-by: Emil Velikov Reviewed-by: Boyan Ding --- diff --git a/src/egl/drivers/dri2/platform_drm.c b/src/egl/drivers/dri2/platform_drm.c index 7e972804608..050c309dceb 100644 --- a/src/egl/drivers/dri2/platform_drm.c +++ b/src/egl/drivers/dri2/platform_drm.c @@ -624,6 +624,10 @@ dri2_initialize_drm(_EGLDriver *drv, _EGLDisplay *disp) gbm = gbm_create_device(fd); if (gbm == NULL) goto cleanup; + } else { + fd = fcntl(gbm_device_get_fd(gbm), F_DUPFD_CLOEXEC, 3); + if (fd < 0) + goto cleanup; } if (strcmp(gbm_device_get_backend_name(gbm), "drm") != 0) @@ -633,12 +637,6 @@ dri2_initialize_drm(_EGLDriver *drv, _EGLDisplay *disp) if (dri2_dpy->gbm_dri->base.type != GBM_DRM_DRIVER_TYPE_DRI) goto cleanup; - if (fd < 0) { - fd = fcntl(gbm_device_get_fd(gbm), F_DUPFD_CLOEXEC, 3); - if (fd < 0) - goto cleanup; - } - dri2_dpy->fd = fd; dri2_dpy->device_name = loader_get_device_name_for_fd(dri2_dpy->fd); dri2_dpy->driver_name = strdup(dri2_dpy->gbm_dri->base.driver_name);