diff options
Diffstat (limited to 'meta-rcar-gen3-adas/recipes-graphics/wayland/weston-1.11.0/0004-Add-display_poll-function.patch')
-rw-r--r-- | meta-rcar-gen3-adas/recipes-graphics/wayland/weston-1.11.0/0004-Add-display_poll-function.patch | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/meta-rcar-gen3-adas/recipes-graphics/wayland/weston-1.11.0/0004-Add-display_poll-function.patch b/meta-rcar-gen3-adas/recipes-graphics/wayland/weston-1.11.0/0004-Add-display_poll-function.patch deleted file mode 100644 index d1a9725..0000000 --- a/meta-rcar-gen3-adas/recipes-graphics/wayland/weston-1.11.0/0004-Add-display_poll-function.patch +++ /dev/null @@ -1,77 +0,0 @@ -diff --git a/clients/toytoolkit.h b/clients/toytoolkit.h -index 402836d..767a84e 100644 ---- a/clients/toytoolkit.h -+++ b/clients/toytoolkit.h -@@ -173,6 +173,9 @@ display_unwatch_fd(struct display *display, int fd); - void - display_run(struct display *d); - -+int -+display_poll(struct display *display, int timeout); -+ - void - display_exit(struct display *d); - -diff --git a/clients/window.c b/clients/window.c -index 2d38796..8540553 100644 ---- a/clients/window.c -+++ b/clients/window.c -@@ -6011,6 +6011,58 @@ display_run(struct display *display) - } - } - -+int -+display_poll(struct display *display, int timeout) -+{ -+ struct task *task; -+ struct epoll_event ep[16]; -+ int i, count, ret; -+ -+ display->running = 1; -+ while (!wl_list_empty(&display->deferred_list)) { -+ task = container_of(display->deferred_list.prev, -+ struct task, link); -+ wl_list_remove(&task->link); -+ task->run(task, 0); -+ } -+ -+ /* ...prepare for a reading */ -+ while (wl_display_prepare_read(display->display) != 0) -+ { -+ /* ...dispatch all pending events and repeat attempt */ -+ wl_display_dispatch_pending(display->display); -+ } -+ -+ /* ...flush all outstanding commands to a display */ -+ if (wl_display_flush(display->display) < 0) { -+ return -1; -+ } -+ -+ if (!display->running) -+ return -1; -+ -+ count = epoll_wait(display->epoll_fd, ep, ARRAY_LENGTH(ep), timeout); -+ if (!count) { -+ wl_display_cancel_read(display->display); -+ return 0; -+ } -+ -+ if (count > 0) { -+ /* ...read display events (if any) before we do any drawing */ -+ if (wl_display_read_events(display->display) < 0) { -+ return -1; -+ } -+ -+ /* ...process pending display events (if any) */ -+ if (wl_display_dispatch_pending(display->display) < 0) { -+ return -1; -+ } -+ } else if (count < 0) { -+ wl_display_cancel_read(display->display); -+ return count; -+ } -+} -+ - void - display_exit(struct display *display) - { |