From: Rob Bradford <r...@linux.intel.com> A version of wl_resource_for_each that is safe for iteration when items in the list are removed. --- src/wayland-server.h | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/src/wayland-server.h b/src/wayland-server.h index d77050d..c0365c0 100644 --- a/src/wayland-server.h +++ b/src/wayland-server.h @@ -313,6 +313,14 @@ wl_resource_get_destroy_listener(struct wl_resource *resource, wl_resource_get_link(resource) != (list); \ resource = wl_resource_from_link(wl_resource_get_link(resource)->next)) +#define wl_resource_for_each_safe(resource, tmp, list) \ + for (resource = 0, tmp = 0, \ + resource = wl_resource_from_link((list)->next), \ + tmp = wl_resource_from_link((list)->next->next); \ + wl_resource_get_link(resource) != (list); \ + resource = tmp, \ + tmp = wl_resource_from_link(wl_resource_get_link(resource)->next)) + struct wl_shm_buffer; struct wl_shm_buffer * -- 1.8.3.1 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel