diff --git a/userspace/libraries/LibGUI/Window.cpp b/userspace/libraries/LibGUI/Window.cpp index 3fe7ca6f..c9929c09 100644 --- a/userspace/libraries/LibGUI/Window.cpp +++ b/userspace/libraries/LibGUI/Window.cpp @@ -300,10 +300,10 @@ namespace LibGUI return {}; } - void Window::wait_events() + void Window::wait_events(const timespec* timeout) { epoll_event dummy; - epoll_wait(m_epoll_fd, &dummy, 1, -1); + epoll_pwait2(m_epoll_fd, &dummy, 1, timeout, nullptr); } void Window::poll_events() diff --git a/userspace/libraries/LibGUI/include/LibGUI/Window.h b/userspace/libraries/LibGUI/include/LibGUI/Window.h index e3252ff4..700df18e 100644 --- a/userspace/libraries/LibGUI/include/LibGUI/Window.h +++ b/userspace/libraries/LibGUI/include/LibGUI/Window.h @@ -66,7 +66,7 @@ namespace LibGUI uint32_t width() const { return m_width; } uint32_t height() const { return m_height; } - void wait_events(); + void wait_events(const timespec* timeout = nullptr); void poll_events(); void set_socket_error_callback(BAN::Function callback) { m_socket_error_callback = callback; }