Commit 662b2bcb authored by Olivier Fourdan's avatar Olivier Fourdan 🛠 Committed by Olivier Fourdan
Browse files

xwayland: Use the pixmap release callback with EGLStream

Commit 77658741

 - "xwayland: Add buffer release callback" added an API
to deal with Wayland buffer release callbacks.

The EGLstream implementation has its own wl_buffer callback, move that
to the buffer release API instead so we don't have to deal with Wayland
buffers directly and match the other Xwayland pixmap backend
Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <>
Reviewed-by: Michel Dänzer's avatarMichel Dänzer <>
Tested-by: Erik Kurzinger's avatarErik Kurzinger <>
parent e5386011
Pipeline #231188 passed with stages
in 7 minutes and 14 seconds
...@@ -465,14 +465,14 @@ xwl_eglstream_queue_pending_stream(struct xwl_screen *xwl_screen, ...@@ -465,14 +465,14 @@ xwl_eglstream_queue_pending_stream(struct xwl_screen *xwl_screen,
} }
static void static void
xwl_eglstream_buffer_release_callback(void *data, struct wl_buffer *wl_buffer) xwl_eglstream_buffer_release_callback(void *data)
{ {
/* drop the reference we took in post_damage, freeing if necessary */ /* drop the reference we took in post_damage, freeing if necessary */
dixDestroyPixmap(data, 0); dixDestroyPixmap(data, 0);
} }
static const struct wl_buffer_listener xwl_eglstream_buffer_release_listener = { static const struct wl_buffer_listener xwl_eglstream_buffer_release_listener = {
xwl_eglstream_buffer_release_callback xwl_pixmap_buffer_release_cb,
}; };
static void static void
...@@ -511,6 +511,10 @@ xwl_eglstream_create_pending_stream(struct xwl_screen *xwl_screen, ...@@ -511,6 +511,10 @@ xwl_eglstream_create_pending_stream(struct xwl_screen *xwl_screen,
&xwl_eglstream_buffer_release_listener, &xwl_eglstream_buffer_release_listener,
pixmap); pixmap);
wl_eglstream_controller_attach_eglstream_consumer( wl_eglstream_controller_attach_eglstream_consumer(
xwl_eglstream->controller, xwl_window->surface, xwl_pixmap->buffer); xwl_eglstream->controller, xwl_window->surface, xwl_pixmap->buffer);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment