Simple Directmedia Layer
Go to file
Ryan C. Gordon fa15674134 coreaudio: changed device close procedure to prevent long hangs in some cases.
The audioqueue thread needs to keep running, and processing the CFRunLoop
until the AudioQueue is disposed of, otherwise CoreAudio will hang waiting for
final data to feed the device.

At least, I think this is how it all works. It definitely fixes the bug here!

Since AudioQueueDispose() calls AudioQueueStop() internally, there's no need
for our thread to handle this, either, which is good because the AudioQueue
would be disposed by this point. So now the AudioQueue is disposed first, and
then our thread is joined, and everything works out okay.

Just in case, we mark the device "paused" before setting everything in motion,
so any further callbacks from CoreAudio will write silence and not fire the
app's audio callback again.

Fixes Bugzilla .
2017-10-13 01:15:29 -04:00
acinclude Fixed bug 3481 - Configure fails to detect dynamic library support on powerpc64le 2016-11-06 20:26:48 -08:00
android-project Fixed bug 3843 - Android missing some code in SDLHapticHandler 2017-09-23 12:37:09 -07:00
build-scripts Updated config.guess and config.sub, added config.sub.patch for NaCl and Emscripten build support 2017-09-09 08:03:23 -07:00
cmake vulkan: Include a copy of vulkan.h and vk_platform.h. 2017-08-27 23:25:12 -04:00
debian Updated version to 2.0.7 2017-10-12 08:08:04 -07:00
docs Fixed bug 3850 - incorrect numbering in docs/README-ios.md 2017-09-26 16:27:24 -07:00
include Fixed compiler warning 2017-10-12 17:17:09 -07:00
src coreaudio: changed device close procedure to prevent long hangs in some cases. 2017-10-13 01:15:29 -04:00
test revert files I didnt mean to commit! 2017-09-29 10:15:44 -07:00
VisualC Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -07:00
VisualC-WinRT Moved haptic source files into the proper folder 2017-08-30 09:44:38 -07:00
visualtest Renaming of guard header names to quiet -Wreserved-id-macro 2017-08-28 00:22:23 -07:00
Xcode Build both 32 and 64-bit architectures in the OSX Framework 2017-10-12 17:21:57 -07:00
Xcode-iOS Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -07:00
.hgignore wayland: Build own version of core protocol 2016-06-23 18:39:05 +08:00
Android.mk Removed non-existent files 2017-09-22 08:31:02 -07:00
autogen.sh Don't use pushd/popd in autogen.sh; Ubuntu's /bin/sh doesn't support it. 2016-12-26 22:58:58 -05:00
BUGS.txt BUGS.txt: Changed mailing list link to discourse.libsdl.org. 2017-04-01 00:05:25 -04:00
cmake_uninstall.cmake.in Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target 2017-10-12 08:44:45 -07:00
CMakeLists.txt Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -07:00
configure Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -07:00
configure.in Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -07:00
COPYING.txt Updated copyright for 2017 2017-01-01 18:33:28 -08:00
CREDITS.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
INSTALL.txt More HTTPS doc tweaks. 2017-02-16 16:59:07 -05:00
Makefile.in vulkan: Initial Vulkan support! 2017-08-27 22:15:57 -04:00
Makefile.minimal Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
Makefile.pandora pandora: Fixed compiler warning about redefining SDL_REVISION. 2017-06-18 23:00:27 +02:00
Makefile.psp PSP: Added missing object for generic TLS to Makefile. 2016-02-13 17:34:14 +01:00
Makefile.wiz Pandora: Updated SDL version in Makefile. 2016-07-19 21:01:30 +02:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.txt readme: correct webpage URL to use HTTPS. 2017-02-16 13:30:34 -05:00
sdl2-config.cmake.in Applied Ubuntu patch bug_822210_fix_sdl2-config.cmake_whitespace.patch 2016-10-07 15:08:37 -07:00
sdl2-config.in Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
sdl2.m4 Fixed bug 3429 - Update AM_PATH_SDL2() to also check for SDL2.framework 2016-09-29 16:37:08 -07:00
sdl2.pc.in Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
SDL2.spec.in Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
SDL2Config.cmake Fixed bug 3651 - CMake build does not install CMake package configuration 2017-08-09 19:03:10 -07:00
TODO.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
VisualC.html Fixed two typos in documentation. 2016-01-12 22:23:53 +01:00
WhatsNew.txt Added functions to query and set the SDL memory allocation functions: 2017-10-12 13:44:28 -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)