Cameron Gutman 9c95c2491c x11: Use XCheckIfEvent() instead of XNextEvent() for thread-safety
A racing reader could read from our fd between SDL_IOReady()/X11_Pending()
and our call to XNextEvent() which will cause XNextEvent() to block for
more data. Avoid this by using XCheckIfEvent() which will never block.

This also fixes a bug where we could poll() for data, even when events were
already read and pending in the queue. Unlike the Wayland implementation,
this isn't totally thread-safe because nothing prevents a racing reader
from reading events into the queue between our XCheckIfEvent() and
SDL_IOReady() calls, but I think this is the best we can do with Xlib.
2021-11-08 19:17:18 -08:00
2021-11-07 13:17:54 -08:00
2021-11-08 14:16:54 -08:00
2021-02-22 15:44:32 +03:00
2021-11-09 02:30:28 +03:00
2021-11-09 02:30:28 +03:00
2018-08-21 13:29:21 -07:00
2018-08-21 13:29:21 -07:00
2021-10-04 21:56:42 +02:00
2018-08-21 13:29:21 -07:00
2020-12-22 17:00:28 +03:00
2021-08-10 14:50:43 -07:00

Simple DirectMedia Layer (SDL) Version 2.0

https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md

Enjoy!

Sam Lantinga (slouken@libsdl.org)

Description
Simple Directmedia Layer
Readme 92 MiB
Languages
C 56.9%
C++ 36.4%
Objective-C 2.3%
Shell 1.3%
M4 1%
Other 2%