commit 7fe3933

Michael Forney  ·  2014-10-18 20:36:09 +0000 UTC
parent 3700d03
wayland: Use wl_display_roundtrip_queue
4 files changed,  +5, -31
+3, -3
 1@@ -104,7 +104,7 @@ struct wld_context * wld_wayland_drm_create_context(struct wl_display * display,
 2     wl_proxy_set_queue((struct wl_proxy *) context->registry, queue);
 3 
 4     /* Wait for wl_drm global. */
 5-    wayland_roundtrip(display, queue);
 6+    wl_display_roundtrip_queue(display, queue);
 7 
 8     if (!context->wl)
 9     {
10@@ -115,7 +115,7 @@ struct wld_context * wld_wayland_drm_create_context(struct wl_display * display,
11     wl_drm_add_listener(context->wl, &drm_listener, context);
12 
13     /* Wait for DRM capabilities and device. */
14-    wayland_roundtrip(display, queue);
15+    wl_display_roundtrip_queue(display, queue);
16 
17     if (!(context->capabilities & WL_DRM_CAPABILITY_PRIME))
18     {
19@@ -130,7 +130,7 @@ struct wld_context * wld_wayland_drm_create_context(struct wl_display * display,
20     }
21 
22     /* Wait for DRM authentication. */
23-    wayland_roundtrip(display, queue);
24+    wl_display_roundtrip_queue(display, queue);
25 
26     if (!context->authenticated)
27     {
+0, -6
 1@@ -52,12 +52,6 @@ extern const struct wld_wayland_interface wayland_drm_interface;
 2 extern const struct wld_wayland_interface wayland_shm_interface;
 3 #endif
 4 
 5-/**
 6- * Like wl_display_roundtrip, but for a particular event queue.
 7- */
 8-int wayland_roundtrip(struct wl_display * display,
 9-                      struct wl_event_queue * queue);
10-
11 bool wayland_buffer_add_exporter(struct buffer * buffer, struct wl_buffer * wl);
12 
13 #endif
+2, -2
 1@@ -114,7 +114,7 @@ struct wld_context * wld_wayland_shm_create_context
 2     wl_proxy_set_queue((struct wl_proxy *) context->registry, queue);
 3 
 4     /* Wait for wl_shm global. */
 5-    wayland_roundtrip(display, queue);
 6+    wl_display_roundtrip_queue(display, queue);
 7 
 8     if (!context->wl)
 9     {
10@@ -125,7 +125,7 @@ struct wld_context * wld_wayland_shm_create_context
11     wl_shm_add_listener(context->wl, &shm_listener, context);
12 
13     /* Wait for SHM formats. */
14-    wayland_roundtrip(display, queue);
15+    wl_display_roundtrip_queue(display, queue);
16 
17     return &context->base.base;
18 
+0, -20
 1@@ -183,26 +183,6 @@ struct wld_surface * wld_wayland_create_surface(struct wld_context * context,
 2     return NULL;
 3 }
 4 
 5-int wayland_roundtrip(struct wl_display * display,
 6-                      struct wl_event_queue * queue)
 7-{
 8-    struct wl_callback * callback;
 9-    bool done = false;
10-    int ret = 0;
11-
12-    callback = wl_display_sync(display);
13-    wl_callback_add_listener(callback, &sync_listener, &done);
14-    wl_proxy_set_queue((struct wl_proxy *) callback, queue);
15-
16-    while (!done && ret >= 0)
17-        ret = wl_display_dispatch_queue(display, queue);
18-
19-    if (ret == -1 && !done)
20-        wl_callback_destroy(callback);
21-
22-    return ret;
23-}
24-
25 static bool buffer_export(struct wld_exporter * exporter,
26                           struct wld_buffer * buffer,
27                           uint32_t type, union wld_object * object)