glfw/docs
Camilla Löwy cd22e28495 X11: Fix empty event race condition with a pipe
There is a seemingly unavoidable race condition when waiting for data on
the X11 display connection, as long as any other thread is also making
Xlib calls.  The event data we are waiting for could be read by the
other thread as part of looking for the reply to its request, before our
poll has begun.

This commit replaces the X11 event sent by glfwPostEmptyEvent with
writing to an unnamed pipe.  The race condition remains if other Xlib
calls are made on other threads, but glfwPostEmptyEvent should now be
race-free.

This commit is based on work by pcwalton, OlivierSohn, kovidgoyal and
joaodasilva.

Closes #2033
Related to #379
Related to #1281
Related to #1285
2022-03-03 22:16:59 +01:00
..
build.dox
CMakeLists.txt
CODEOWNERS
compat.dox
compile.dox Add glfwInitVulkanLoader 2021-10-27 18:22:05 +02:00
context.dox
CONTRIBUTING.md Update IRC network to Libera.Chat 2021-06-14 19:50:32 +02:00
Doxyfile.in
DoxygenLayout.xml Add tutorial to Doxygen menu 2018-11-05 19:04:27 +01:00
extra.css
extra.css.map Improve headings and TOC layout in Doxygen docs 2021-10-25 23:38:41 +02:00
extra.scss Improve headings and TOC layout in Doxygen docs 2021-10-25 23:38:41 +02:00
footer.html
header.html
input.dox
internal.dox
intro.dox
main.dox Start 3.4 2019-04-16 23:08:39 +02:00
monitor.dox
moving.dox
news.dox X11: Fix empty event race condition with a pipe 2022-03-03 22:16:59 +01:00
quick.dox Clarify docs on default GL header inclusion 2020-06-02 18:04:49 +02:00
spaces.svg
SUPPORT.md
vulkan.dox Add glfwInitVulkanLoader 2021-10-27 18:22:05 +02:00
window.dox