Fri, 06 Jan 2017 20:43:53 -0800Added configure and cmake support for libsamplerate
Sam Lantinga <slouken@libsdl.org> [Fri, 06 Jan 2017 20:43:53 -0800] rev 10777
Added configure and cmake support for libsamplerate

Fri, 06 Jan 2017 21:23:51 -0500audio: Don't call a NULL function pointer when clearing audio streams.
Ryan C. Gordon <icculus@icculus.org> [Fri, 06 Jan 2017 21:23:51 -0500] rev 10776
audio: Don't call a NULL function pointer when clearing audio streams.

(Partially?) fixes Bugzilla #3547.

Fri, 06 Jan 2017 21:17:33 -0500Better fix for static analysis issue in SDL_DestroyRenderer().
Ryan C. Gordon <icculus@icculus.org> [Fri, 06 Jan 2017 21:17:33 -0500] rev 10775
Better fix for static analysis issue in SDL_DestroyRenderer().

Follow up fix for Bugzilla #3544.

Fri, 06 Jan 2017 20:00:17 -0500emscripten-buildbot.sh: let user override default SDKDIR.
Ryan C. Gordon <icculus@icculus.org> [Fri, 06 Jan 2017 20:00:17 -0500] rev 10774
emscripten-buildbot.sh: let user override default SDKDIR.

Fri, 06 Jan 2017 02:16:26 -0800Added support for using libsamplerate to do audio resampling
Sam Lantinga <slouken@libsdl.org> [Fri, 06 Jan 2017 02:16:26 -0800] rev 10773
Added support for using libsamplerate to do audio resampling

Fri, 06 Jan 2017 00:47:42 -0800Fixed confusion between Ryan's new audio stream and the audio buffer we were calling stream in the callback
Sam Lantinga <slouken@libsdl.org> [Fri, 06 Jan 2017 00:47:42 -0800] rev 10772
Fixed confusion between Ryan's new audio stream and the audio buffer we were calling stream in the callback

Fri, 06 Jan 2017 00:40:22 -0800Just roll back the entire portion of the commit from b6ec7005ca15 which caused bug 3544 until we figure out what the right static analysis fix is.
Sam Lantinga <slouken@libsdl.org> [Fri, 06 Jan 2017 00:40:22 -0800] rev 10771
Just roll back the entire portion of the commit from b6ec7005ca15 which caused bug 3544 until we figure out what the right static analysis fix is.

Fri, 06 Jan 2017 03:38:14 -0500audio: Add an assert to make sure non-streaming audio uses good buffer sizes.
Ryan C. Gordon <icculus@icculus.org> [Fri, 06 Jan 2017 03:38:14 -0500] rev 10770
audio: Add an assert to make sure non-streaming audio uses good buffer sizes.

Fri, 06 Jan 2017 00:32:06 -0800Fixed bug 3544 - Memory freeing bug in SDL_DestroyRenderer/SDL_DestroyTexture
Sam Lantinga <slouken@libsdl.org> [Fri, 06 Jan 2017 00:32:06 -0800] rev 10769
Fixed bug 3544 - Memory freeing bug in SDL_DestroyRenderer/SDL_DestroyTexture

felix

Here's a snippet of SDL_DestroyRenderer from hg revision 10746:95c57a177719:

SDL_Texture *texture = NULL;
SDL_Texture *nexttexture = NULL;
/* ... */
for (texture = renderer->textures; texture; texture = nexttexture) {
nexttexture = texture->next;
SDL_DestroyTexture(texture);
}

SDL_DestroyTexture removes the texture from the linked list pointed to by the renderer and ends up calling SDL_DestroyTextureInternal, which contains this:

if (texture->native) {
SDL_DestroyTexture(texture->native);
}

If it happens that texture->native is an alias of nexttexture two stack frames up, SDL_DestroyRenderer will end up trying to destroy an already freed texture. I've had this very situation happen in dosemu2.

Bug introduced in revision 10650:b6ec7005ca15, which has a somewhat ironic description of "Fixed all known static analysis bugs"...

Fri, 06 Jan 2017 03:15:27 -0500haiku: Patched to compile.
Ryan C. Gordon <icculus@icculus.org> [Fri, 06 Jan 2017 03:15:27 -0500] rev 10768
haiku: Patched to compile.