From: Daniel Stone Date: Fri, 5 May 2017 13:44:20 +0000 (+0100) Subject: egl/wayland: Don't open-code roundtrip X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8118bc269f39ea0b965752ea89b886b28094db42;p=mesa.git egl/wayland: Don't open-code roundtrip wl_display_roundtrip_queue() exists and can replace roundtrip(). The API was introduced with wayland 1.6, while we currently require 1.11. Signed-off-by: Daniel Stone Reviewed-by: Emil Velikov Reviewed-by: Lionel Landwerlin Cc: mesa-stable@lists.freedesktop.org --- diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c index a3380f298d3..561609dbab4 100644 --- a/src/egl/drivers/dri2/platform_wayland.c +++ b/src/egl/drivers/dri2/platform_wayland.c @@ -55,34 +55,10 @@ static EGLBoolean dri2_wl_swap_interval(_EGLDriver *drv, _EGLDisplay *disp, _EGLSurface *surf, EGLint interval); -static void -sync_callback(void *data, struct wl_callback *callback, uint32_t serial) -{ - int *done = data; - - *done = 1; - wl_callback_destroy(callback); -} - -static const struct wl_callback_listener sync_listener = { - .done = sync_callback -}; - static int roundtrip(struct dri2_egl_display *dri2_dpy) { - struct wl_callback *callback; - int done = 0, ret = 0; - - callback = wl_display_sync(dri2_dpy->wl_dpy_wrapper); - wl_callback_add_listener(callback, &sync_listener, &done); - while (ret != -1 && !done) - ret = wl_display_dispatch_queue(dri2_dpy->wl_dpy, dri2_dpy->wl_queue); - - if (!done) - wl_callback_destroy(callback); - - return ret; + return wl_display_roundtrip_queue(dri2_dpy->wl_dpy, dri2_dpy->wl_queue); } static void