summaryrefslogtreecommitdiff
path: root/libweston
diff options
context:
space:
mode:
authorDaniel Stone <daniels@collabora.com>2016-11-28 16:05:35 +0000
committerDaniel Stone <daniels@collabora.com>2016-11-28 22:00:46 +0000
commit21fac6083862d6f7523bb99123c487013fc38fd9 (patch)
treece6b5844eb9d1a43ef8cb911453283b355024d9d /libweston
parent6a38ad740c66c41d00c972005a50e66afbf00a18 (diff)
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>
Diffstat (limited to 'libweston')
-rw-r--r--libweston/compositor-wayland.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/libweston/compositor-wayland.c b/libweston/compositor-wayland.c
index 8f217af7..60cd1849 100644
--- a/libweston/compositor-wayland.c
+++ b/libweston/compositor-wayland.c
@@ -593,7 +593,6 @@ wayland_output_repaint_pixman(struct weston_output *output_base,
struct wayland_output *output = to_wayland_output(output_base);
struct wayland_backend *b =
to_wayland_backend(output->base.compositor);
- struct wl_callback *callback;
struct wayland_shm_buffer *sb;
if (output->frame) {
@@ -613,8 +612,8 @@ wayland_output_repaint_pixman(struct weston_output *output_base,
wayland_shm_buffer_attach(sb);
- callback = wl_surface_frame(output->parent.surface);
- wl_callback_add_listener(callback, &frame_listener, output);
+ output->frame_cb = wl_surface_frame(output->parent.surface);
+ wl_callback_add_listener(output->frame_cb, &frame_listener, output);
wl_surface_commit(output->parent.surface);
wl_display_flush(b->parent.wl_display);