wayland: Don't cancel a roundtrip when any event is received
authorJonas Ådahl <jadahl@gmail.com>
Tue, 25 Dec 2012 12:01:08 +0000 (13:01 +0100)
committerKristian Høgsberg <krh@bitplanet.net>
Thu, 10 Jan 2013 21:34:07 +0000 (16:34 -0500)
commitf2da7e720f60e8df96bf2530f35e3e79897e0cb7
tree8ed0df609c88e4b0245f2fef2be2f2cfac721f99
parentf9d8d0c3b5e11c4ae08b078dca2aa48a3218f8d9
wayland: Don't cancel a roundtrip when any event is received

Since wl_display_dispatch_queue() returns the number of processed events
or -1 on error, only cancel the roundtrip if an -1 is returned.

This also fixes a potential memory corruption bug happening when the
roundtrip does an early return and the callback later writes to the then
out of scope stack allocated `done' parameter.

Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
src/egl/drivers/dri2/platform_wayland.c
src/gallium/state_trackers/egl/wayland/native_wayland.c