Tue, 14 Feb 2017 03:03:27 -0500wasapi: Initial WASAPI support, for Windows Vista and later.
Ryan C. Gordon <icculus@icculus.org> [Tue, 14 Feb 2017 03:03:27 -0500] rev 10888
wasapi: Initial WASAPI support, for Windows Vista and later.

This should remain binary compatible with Windows XP, as we dynamically
load anything we need and fall back to DirectSound/WinMM/XAudio2 if not
available.

Tue, 14 Feb 2017 02:49:08 -0500stdlib: Fixed crash on SDL_snprintf("%s", NULL).
Ryan C. Gordon <icculus@icculus.org> [Tue, 14 Feb 2017 02:49:08 -0500] rev 10887
stdlib: Fixed crash on SDL_snprintf("%s", NULL).

Like other C runtimes, it should probably produce the string "(null)".

This bug probably only affected Windows, as most platforms use their standard
C runtime's snprintf().

Mon, 13 Feb 2017 17:05:14 -0500thread: Don't use SetThreadDescription on WinRT right now.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Feb 2017 17:05:14 -0500] rev 10886
thread: Don't use SetThreadDescription on WinRT right now.

Can't LoadLibrary for it, but not sure if it's actually available there yet.

Mon, 13 Feb 2017 17:00:46 -0500windows: Try to unify all the GUID comparison code into a core helper function.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Feb 2017 17:00:46 -0500] rev 10885
windows: Try to unify all the GUID comparison code into a core helper function.

There are likely several more I missed.

Mon, 13 Feb 2017 16:59:02 -0500audio: Don't wrap bootstrap declarations in preprocessor macros.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Feb 2017 16:59:02 -0500] rev 10884
audio: Don't wrap bootstrap declarations in preprocessor macros.

They are harmless and ignored if we don't actually link against them. The
preprocessor checks elsewhere if they're actually used.

Mon, 13 Feb 2017 16:56:41 -0500audio: SDL_AudioStream's *_sample_frame_size should be in bytes, not bits.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Feb 2017 16:56:41 -0500] rev 10883
audio: SDL_AudioStream's *_sample_frame_size should be in bytes, not bits.

Fixes failures where SDL_AudioStreamGet() incorrectly thinks it got a partial
sample frame request.

Mon, 13 Feb 2017 16:55:00 -0500audio: Added a ThreadDeinit() method to match ThreadInit.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Feb 2017 16:55:00 -0500] rev 10882
audio: Added a ThreadDeinit() method to match ThreadInit.

Not used by any targets at the moment, but will be shortly!

Sat, 11 Feb 2017 16:38:16 -0800Fixed bug 3584 - Small stack size for audio callback thread
Sam Lantinga <slouken@libsdl.org> [Sat, 11 Feb 2017 16:38:16 -0800] rev 10881
Fixed bug 3584 - Small stack size for audio callback thread

Walter van Niftrik

We have found that since SDL 2.0.5 the audio callback thread is created with a very small stack size. In our application this is leading to stack overflows.

We believe there is a bug at http://hg.libsdl.org/SDL/file/5a77f977ad95/src/audio/SDL_audio.c#l1132, where the is_internal_thread flag appears to be inverted.

Sat, 11 Feb 2017 11:14:48 -0800Fixed bug 3583 - X11 touch device can be permanently lost
Sam Lantinga <slouken@libsdl.org> [Sat, 11 Feb 2017 11:14:48 -0800] rev 10880
Fixed bug 3583 - X11 touch device can be permanently lost

Volumetric

In X11 the SDL error "Unknown touch device" can occur after which the application stops recognizing touch events. For a kiosk-type application this results in a hang as far as the user is concerned. This is reproducible on HP Z220/Z230/Z240 workstations by swapping USB cables for a while and it also occurs with no physical changes, probably due to USB device power management. A workaround is to make SDL re-enumerate the touch devices like it does at startup. A patch is attached.

Fri, 10 Feb 2017 11:21:15 -0800Make sure the memory barrier functions are always available, and now they are implemented on Android __ARM_ARCH_5TE__
Sam Lantinga <slouken@libsdl.org> [Fri, 10 Feb 2017 11:21:15 -0800] rev 10879
Make sure the memory barrier functions are always available, and now they are implemented on Android __ARM_ARCH_5TE__