Add Genode platform support
Whitespace cleanup
Backed out changeset 7ca4a9de2ae4
6b0a65d1e16f — Sam Lantinga 2 years ago
Removed Xbox HIDAPI debug code
7ca4a9de2ae4 — Sam Lantinga 2 years ago
Updated SDL to version 2.0.13 for development builds
9ef2846f0c73 — Sam Lantinga 2 years ago
Added tag release-2.0.12 for changeset 78d0bb6f3b8f
78d0bb6f3b8f — Sam Lantinga 2 years ago
Read the buttons on Nintendo Switch and GameCube controllers as they are labeled, and swap them if the applications wants positional button data instead.
e6a2558ec791 — Sam Lantinga 2 years ago
Fixed bug 4921 - Do not swap B/X buttons on GameCube controller unless it's requested

Ethan Lee

Basically replicating the solution of the Switch Controller's button label issue. Physical layout should take priority unless it's explicitly requested by the user or application!
3d3649fe086e — Sam Lantinga 2 years ago
Fixed bug 5022 - SDL_iconv_string can get stuck in an infinite loop when encountering invalid characters


In `SDL_iconv_string` the `while (inbytesleft > 0)` loop can end up in a state where it never terminates because the library `iconv` function called from `SDL_iconv` doesn't consume any bytes.

This happened when a `WCHAR_T` input string was being converted to `UTF-8` but contained invalid characters. It would first It would first skip a few bytes due to `case SDL_ICONV_EILSEQ` but when there were 3 bytes remaining of `inbytesleft` `iconv` just didn't consume anything more (but didn't throw an error either).

It just so happens that the Microsoft Classic IntelliMouse `product_string` contains such invalid characters (`"MicrosoftÆ Classic IntelliMouseÆ"`), meaning the function would get stuck with said mouse plugged in.

A fix for this would be to check if `inbytesleft` was unchanged after an iteration and in that case either decrement the counter like when `SDL_ICONV_EILSEQ` is returned or simply break the loop.
e42055c6d8b5 — Sam Lantinga 2 years ago
Fixed warnings building with mingw64
5cfc87d218e1 — Sam Lantinga 2 years ago
Clarified that the clip rectangle is defined relative to the viewport, and added a clip test to testviewport.c
663f2daa3e4f — Sam Lantinga 2 years ago
Fixed bug 4991 - Pixel shader problem when recreating a texture for direct3d renderer


Hi, i already mentioned in the SDL discourse a bug that recreating of a texture occours pixel shader problem on direct3d renderer. There is no problem for direct3d11. You can see the issue by using my app named C Media Player which is available for Windows for free using my web site Just follow the steps:

*Open a media file
*When playing the file change the scale quality under the video menu.
*You will see the problem.
178f27cd89a9 — Sam Lantinga 2 years ago
Don't release the backbuffer on error, we didn't acquire it.
501950e51321 — Cameron Gutman 2 years ago
Clear the old player index slot when moving to a new one
36aabb2051e9 — Cameron Gutman 2 years ago
Fix incorrect player index when assigning a joystick the same index twice

Prior to this fix, we would hit the existing_instance >= 0 case and move the joystick
again to a different index than the one requested by the caller. It also breaks the assumption
that a SDL_JoystickID is only present in SDL_joystick_players at one location.
9b5e16574ea9 — Cameron Gutman 2 years ago
direct3d: Don't attempt to create zero sized vertex buffer
ea9492fc2eae — Cameron Gutman 2 years ago
Added support for indicating player index on DS4 controllers
3ff45857428d — Sam Lantinga 2 years ago
Fixed regression in bug 4966 - KMSDRM: Add dynamic modeset support

Anthony Pesch

I was just communicating with one of the Retropie developers regarding this.

This change removed the forced window focus change on creation ( as part of the change no longer assumes there's only a single window being created. This was perhaps an over-aggressive removal.

Due to that change, joystick events are only received if SDL_SetKeyboardFocus is called explicitly, or if the app has specified SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS.

I think that part of my change should be reverted to continue setting mouse / keyboard focus to the window being created. If SDL_WINDOW_INPUT_FOCUS is to be used as an input flag the code could be conditional, but that would still leave existing software broken.
35b18e76f1a6 — Sam Lantinga 2 years ago
Fixed java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.WindowManager' on a null object reference
0311c59d15f9 — Ethan Lee 2 years ago
winrt: Wait for EnumerationCompleted before leaving WASAPI_EnumerateEndpoints