compositor-wayland: Set frame callback for Pixman
Fixing 89c2f637b9, also set the output's frame_cb for the Pixman
renderer, not just GL. Fixes a segfault when using compositor-wayland
with --use-pixman.
Signed-off-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Dima Ryazanov <dima@gmail.com>
This commit is contained in:
@@ -593,7 +593,6 @@ wayland_output_repaint_pixman(struct weston_output *output_base,
|
|||||||
struct wayland_output *output = to_wayland_output(output_base);
|
struct wayland_output *output = to_wayland_output(output_base);
|
||||||
struct wayland_backend *b =
|
struct wayland_backend *b =
|
||||||
to_wayland_backend(output->base.compositor);
|
to_wayland_backend(output->base.compositor);
|
||||||
struct wl_callback *callback;
|
|
||||||
struct wayland_shm_buffer *sb;
|
struct wayland_shm_buffer *sb;
|
||||||
|
|
||||||
if (output->frame) {
|
if (output->frame) {
|
||||||
@@ -613,8 +612,8 @@ wayland_output_repaint_pixman(struct weston_output *output_base,
|
|||||||
|
|
||||||
wayland_shm_buffer_attach(sb);
|
wayland_shm_buffer_attach(sb);
|
||||||
|
|
||||||
callback = wl_surface_frame(output->parent.surface);
|
output->frame_cb = wl_surface_frame(output->parent.surface);
|
||||||
wl_callback_add_listener(callback, &frame_listener, output);
|
wl_callback_add_listener(output->frame_cb, &frame_listener, output);
|
||||||
wl_surface_commit(output->parent.surface);
|
wl_surface_commit(output->parent.surface);
|
||||||
wl_display_flush(b->parent.wl_display);
|
wl_display_flush(b->parent.wl_display);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user