mirror of
https://github.com/libsdl-org/SDL.git
synced 2025-12-26 16:18:57 +00:00
32cc92dceb3eba19935fd4ea95397877e7a46a16
Sometimes these callbacks will fire while we're still waiting on state to settle down in PIPEWIRE_OpenDevice, which means we're holding the device lock, but then the i/o callback will fire from a background thread and also try to grab the device lock, but can't, because PIPEWIRE_OpenDevice is holding it and waiting for this i/o callback to finish...hence, a deadlock. So now, if the device is still opening, output callbacks will write silence and input callbacks will just flush the buffer, without calling the main iterate function, and thus avoid obtaining the lock.
Simple DirectMedia Layer (SDL) Version 3.0
Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware. 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. If you are migrating to SDL 3.0 from SDL 2.0, the changes are extensively documented in README-migration.md.
Enjoy!
Sam Lantinga (slouken@libsdl.org)
Languages
C
86.4%
C++
5.8%
Objective-C
3.4%
CMake
1.6%
Perl
0.8%
Other
1.7%