mirror of
https://github.com/glfw/glfw.git
synced 2026-09-17 14:22:50 +00:00
Wayland: Fix deadlock causing timeout
If the frame was processed by wl_display_dispatch_queue_pending, this
would be treated as no frame having been received.
Oops.
This bug was introduced by fdd14e65b1.
This commit is contained in:
+4
-1
@@ -2324,8 +2324,11 @@ GLFWbool _glfwWaitForEGLFrameWayland(_GLFWwindow* window)
|
|||||||
|
|
||||||
while (window->wl.egl.callback)
|
while (window->wl.egl.callback)
|
||||||
{
|
{
|
||||||
while (wl_display_prepare_read_queue(_glfw.wl.display, window->wl.egl.queue) != 0)
|
if (wl_display_prepare_read_queue(_glfw.wl.display, window->wl.egl.queue) != 0)
|
||||||
|
{
|
||||||
wl_display_dispatch_queue_pending(_glfw.wl.display, window->wl.egl.queue);
|
wl_display_dispatch_queue_pending(_glfw.wl.display, window->wl.egl.queue);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (!flushDisplay())
|
if (!flushDisplay())
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user