From dcdb10348b8f329e8c54fd7d3060f7588408c448 Mon Sep 17 00:00:00 2001 From: Connor Fitzgerald Date: Sat, 18 Jan 2025 15:02:42 -0500 Subject: [PATCH] Add Flush to GL Queue::submit (#6941) --- wgpu-hal/src/gles/queue.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/wgpu-hal/src/gles/queue.rs b/wgpu-hal/src/gles/queue.rs index 8896aa4ed..6f52a5d44 100644 --- a/wgpu-hal/src/gles/queue.rs +++ b/wgpu-hal/src/gles/queue.rs @@ -1860,6 +1860,11 @@ impl crate::Queue for super::Queue { .map_err(|_| crate::DeviceError::OutOfMemory)?; signal_fence.pending.push((signal_value, sync)); + // This is extremely important. If we don't flush, the above fences may never + // be signaled, particularly in headless contexts. Headed contexts will + // often flush every so often, but headless contexts may not. + unsafe { gl.flush() }; + Ok(()) }