summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ã…dahl <jadahl@gmail.com>2022-05-27 23:41:01 +0200
committerRobert Mader <robert.mader@collabora.com>2022-12-02 15:24:30 +0100
commit4471b1914378d8bae752d066433ca5e6ffcb5c48 (patch)
treec988b0a78842744e6bb6d4fa4d57156eb38c82e6
parente31f9b39878878a18c89c6638308c0e3324f0d50 (diff)
downloadmutter-4471b1914378d8bae752d066433ca5e6ffcb5c48.tar.gz
wayland/dma-buf: Get backend via MetaContext
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2546> (cherry picked from commit 1844dcc08ec0693b9a0331b98d07d460cb92f0fa)
-rw-r--r--src/wayland/meta-wayland-dma-buf.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/wayland/meta-wayland-dma-buf.c b/src/wayland/meta-wayland-dma-buf.c
index 9b708abd3..3a5149a8b 100644
--- a/src/wayland/meta-wayland-dma-buf.c
+++ b/src/wayland/meta-wayland-dma-buf.c
@@ -331,7 +331,9 @@ static gboolean
meta_wayland_dma_buf_realize_texture (MetaWaylandBuffer *buffer,
GError **error)
{
- MetaBackend *backend = meta_get_backend ();
+ MetaContext *context =
+ meta_wayland_compositor_get_context (buffer->compositor);
+ MetaBackend *backend = meta_context_get_backend (context);
MetaEgl *egl = meta_backend_get_egl (backend);
ClutterBackend *clutter_backend = meta_backend_get_clutter_backend (backend);
CoglContext *cogl_context = clutter_backend_get_cogl_context (clutter_backend);
@@ -550,7 +552,9 @@ meta_wayland_dma_buf_try_acquire_scanout (MetaWaylandDmaBufBuffer *dma_buf,
CoglOnscreen *onscreen)
{
#ifdef HAVE_NATIVE_BACKEND
- MetaBackend *backend = meta_get_backend ();
+ MetaContext *context =
+ meta_wayland_compositor_get_context (dma_buf->manager->compositor);
+ MetaBackend *backend = meta_context_get_backend (context);
MetaRenderer *renderer = meta_backend_get_renderer (backend);
MetaRendererNative *renderer_native = META_RENDERER_NATIVE (renderer);
int n_planes;
@@ -967,6 +971,9 @@ ensure_scanout_tranche (MetaWaylandDmaBufSurfaceFeedback *surface_feedback,
MetaCrtc *crtc)
{
MetaWaylandDmaBufManager *dma_buf_manager = surface_feedback->dma_buf_manager;
+ MetaContext *context =
+ meta_wayland_compositor_get_context (dma_buf_manager->compositor);
+ MetaBackend *backend = meta_context_get_backend (context);
MetaWaylandDmaBufFeedback *feedback = surface_feedback->feedback;
MetaCrtcKms *crtc_kms;
MetaWaylandDmaBufTranche *tranche;
@@ -992,7 +999,7 @@ ensure_scanout_tranche (MetaWaylandDmaBufSurfaceFeedback *surface_feedback,
}
formats = g_array_new (FALSE, FALSE, sizeof (MetaWaylandDmaBufFormat));
- if (should_send_modifiers (meta_get_backend ()))
+ if (should_send_modifiers (backend))
{
for (i = 0; i < dma_buf_manager->formats->len; i++)
{
@@ -1455,7 +1462,9 @@ MetaWaylandDmaBufManager *
meta_wayland_dma_buf_manager_new (MetaWaylandCompositor *compositor,
GError **error)
{
- MetaBackend *backend = meta_get_backend ();
+ MetaContext *context =
+ meta_wayland_compositor_get_context (compositor);
+ MetaBackend *backend = meta_context_get_backend (context);
MetaEgl *egl = meta_backend_get_egl (backend);
ClutterBackend *clutter_backend = meta_backend_get_clutter_backend (backend);
CoglContext *cogl_context = clutter_backend_get_cogl_context (clutter_backend);