Mon, 13 Apr 2020 13:24:56 -0700Fixed implicit linkage to ftol2() on Windows
Sam Lantinga <slouken@libsdl.org> [Mon, 13 Apr 2020 13:24:56 -0700] rev 13740
Fixed implicit linkage to ftol2() on Windows

Mon, 13 Apr 2020 13:24:19 -0700Fixed build
Sam Lantinga <slouken@libsdl.org> [Mon, 13 Apr 2020 13:24:19 -0700] rev 13739
Fixed build

Mon, 13 Apr 2020 12:33:29 -0700Fixed rare crash when unplugging Xbox controller on Windows
Sam Lantinga <slouken@libsdl.org> [Mon, 13 Apr 2020 12:33:29 -0700] rev 13738
Fixed rare crash when unplugging Xbox controller on Windows

Mon, 13 Apr 2020 15:22:09 -0400cmake: use check_symbol_exists, not check_function_exists (thanks, Manuel!)
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Apr 2020 15:22:09 -0400] rev 13737
cmake: use check_symbol_exists, not check_function_exists (thanks, Manuel!)

This fixes the problem where we think iOS has fseeko64, etc, but doesn't.

Fixes Bugzilla #4885.

Mon, 13 Apr 2020 14:48:38 -0400SDL_EGL_ChooseConfig: don't fall through if no matching format exists
Conn O'Griofa <connogriofa@gmail.com> [Mon, 13 Apr 2020 14:48:38 -0400] rev 13736
SDL_EGL_ChooseConfig: don't fall through if no matching format exists
On Raspberry Pi 3 via the VC4 driver in firmware KMS mode, none of the
found configs match the desired format, causing the function to fall through
without any config being selected.

Fix by first iterating over the found configs, and if no match exists,
don't exclude the non-matching configs. This should fix RPI3 and possibly other
targets without breaking targets that have a matching native format (such as RPI4).

Mon, 13 Apr 2020 14:45:40 -0400opengl: Convert an int to an SDL_bool.
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Apr 2020 14:45:40 -0400] rev 13735
opengl: Convert an int to an SDL_bool.

Mon, 13 Apr 2020 14:44:21 -0400opengl: Allow SDL_GL_MakeCurrent() to accept a NULL window (thanks, Martin!).
Ryan C. Gordon <icculus@icculus.org> [Mon, 13 Apr 2020 14:44:21 -0400] rev 13734
opengl: Allow SDL_GL_MakeCurrent() to accept a NULL window (thanks, Martin!).

This allows you to bind surfaceless contexts on a background thread to, for
example, load assets in a separate context, for platforms that have different
requirements about sharing surfaces, etc.

Martin's notes on the matter:

"Here's a patch that enables passing NULL windows to SDL_GL_MakeCurrent, if
the involved APIs allow it. Currently, this is only the case for EGL, and
even then only if some specific extensions are present (which they usually
are).

If "surfaceless" contexts are not supported, SDL_GL_MakeCurrent continues to
generate an error (albeit with a more specific error message than it used to),
so this should not break anything that wasn't broken before."

(Please see https://bugzilla.libsdl.org/show_bug.cgi?id=3695 for more
discussion.)

Fixes Bugzilla #3695.

Mon, 13 Apr 2020 08:18:16 -0700Enable the virtual joystick API by default
Sam Lantinga <slouken@libsdl.org> [Mon, 13 Apr 2020 08:18:16 -0700] rev 13733
Enable the virtual joystick API by default

Mon, 13 Apr 2020 08:13:50 -0700Enable virtual joystick API by default
Sam Lantinga <slouken@libsdl.org> [Mon, 13 Apr 2020 08:13:50 -0700] rev 13732
Enable virtual joystick API by default

Sun, 12 Apr 2020 00:55:52 -0400video: NULL out pointer to freed window surface
Jay Petacat <jay@jayschwa.net> [Sun, 12 Apr 2020 00:55:52 -0400] rev 13731
video: NULL out pointer to freed window surface

This behavior matches SDL_RecreateWindow and makes it less likely that
another piece of code (e.g. a DestroyWindowFramebuffer implementation)
will attempt to use or free the stale surface pointer.