summaryrefslogtreecommitdiff
path: root/hw/xwayland
diff options
context:
space:
mode:
authorOlivier Fourdan <ofourdan@redhat.com>2024-03-12 14:14:55 +0100
committerMarge Bot <emma+marge@anholt.net>2024-03-18 15:41:17 +0000
commit5df6a1e969dd29e3d7e4d5138225d22ac282a85e (patch)
treee2a97246203e93774105aa0e75f4e6e7ff7e1bf9 /hw/xwayland
parent63e2f98f0ab810095ee2d48843d08bd7772f1711 (diff)
xwayland/glamor: Make xwl_glamor_init_gbm() return its status
This is a preliminary step to remove the backend's field "is_available". Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1386>
Diffstat (limited to 'hw/xwayland')
-rw-r--r--hw/xwayland/xwayland-glamor-gbm.c12
-rw-r--r--hw/xwayland/xwayland-glamor-gbm.h2
2 files changed, 6 insertions, 8 deletions
diff --git a/hw/xwayland/xwayland-glamor-gbm.c b/hw/xwayland/xwayland-glamor-gbm.c
index a62412b7b..92cb15c18 100644
--- a/hw/xwayland/xwayland-glamor-gbm.c
+++ b/hw/xwayland/xwayland-glamor-gbm.c
@@ -1283,27 +1283,25 @@ drmDevice *xwl_gbm_get_main_device(struct xwl_screen *xwl_screen)
return xwl_gbm->device;
}
-void
+Bool
xwl_glamor_init_gbm(struct xwl_screen *xwl_screen)
{
struct xwl_gbm_private *xwl_gbm;
- xwl_screen->gbm_backend.is_available = FALSE;
-
if (!xwl_glamor_gbm_has_egl_extension())
- return;
+ return FALSE;
if (!dixRegisterPrivateKey(&xwl_gbm_private_key, PRIVATE_SCREEN, 0))
- return;
+ return FALSE;
xwl_gbm = calloc(sizeof(*xwl_gbm), 1);
if (!xwl_gbm) {
ErrorF("glamor: Not enough memory to setup GBM, disabling\n");
- return;
+ return FALSE;
}
dixSetPrivate(&xwl_screen->screen->devPrivates, &xwl_gbm_private_key,
xwl_gbm);
- xwl_screen->gbm_backend.is_available = TRUE;
+ return TRUE;
}
diff --git a/hw/xwayland/xwayland-glamor-gbm.h b/hw/xwayland/xwayland-glamor-gbm.h
index 34fcb3541..9083f2578 100644
--- a/hw/xwayland/xwayland-glamor-gbm.h
+++ b/hw/xwayland/xwayland-glamor-gbm.h
@@ -36,7 +36,7 @@
#include "xwayland-types.h"
-void xwl_glamor_init_gbm(struct xwl_screen *xwl_screen);
+Bool xwl_glamor_init_gbm(struct xwl_screen *xwl_screen);
Bool xwl_glamor_has_wl_drm(struct xwl_screen *xwl_screen);
Bool xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen);
Bool xwl_glamor_gbm_init_screen(struct xwl_screen *xwl_screen);