[PATCH weston 1/3] window: use roundtrip instead of dispatch after get_registry
Pekka Paalanen
ppaalanen at gmail.com
Fri Dec 12 04:24:37 PST 2014
On Fri, 5 Dec 2014 13:49:40 +0100
Marek Chalupa <mchqwerty at gmail.com> wrote:
> wl_display_dispatch() just dispatches events that are in
> default and display queues and if there are no events,
> then it will wait for them. But only dispatching
> the events doesn't guarantee that we got all the global announcements,
> we need to do sync too. Therefore use wl_display_roundtrip() instead
> of wl_display_dispatch().
>
> Signed-off-by: Marek Chalupa <mchqwerty at gmail.com>
> ---
> clients/window.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/clients/window.c b/clients/window.c
> index cc1e272..c5082ba 100644
> --- a/clients/window.c
> +++ b/clients/window.c
> @@ -5527,7 +5527,7 @@ display_create(int *argc, char *argv[])
> d->registry = wl_display_get_registry(d->display);
> wl_registry_add_listener(d->registry, ®istry_listener, d);
>
> - if (wl_display_dispatch(d->display) < 0) {
> + if (wl_display_roundtrip(d->display) < 0) {
> fprintf(stderr, "Failed to process Wayland connection: %m\n");
> return NULL;
> }
Very true, pushed.
I tried to look quickly, but I couldn't see it; the globals that send
initial events on bind, like wl_shm.format - do we have the 2nd
roundtrip for those somewhere?
Thanks,
pq
More information about the wayland-devel
mailing list