Sat, 08 Jun 2019 14:54:37 -0700Fixed bug 4557 - SDL_SIMDAlloc and *Free should be in the public interface
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:54:37 -0700] rev 12794
Fixed bug 4557 - SDL_SIMDAlloc and *Free should be in the public interface

Martin Gerhardy

These functions are really useful and should get exposed imo.

Sat, 08 Jun 2019 14:40:27 -0700Fixed bug 4583 - PollAllValues appears to use an incorrect index for all axes above 0x18
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:40:27 -0700] rev 12793
Fixed bug 4583 - PollAllValues appears to use an incorrect index for all axes above 0x18

Noam Preil

In src/joystick/linux/SDL_sysjoystick.c:

The ConfigJoystick function's axes detection starts with a for loop using an index i for Linux's axes names. When i gets to ABS_HAT0X, it's set to ABS_HAT3Y and a continue statement appears, to skip the hats. This makes sense, as SDL handles hats separately from axes.

However, in PollAllValues, *two* indices are used: a and b. Both start out the same, and remain so until the hats are reached. At that point, a becomes identical to the i from ConfigJoystick's loop, but b is equal to a - (ABS_HAT3Y - ABS_HAT0X), or a - 8.

While all the joystick->hwdata->abs_* structures in ConfigJoystick used i - which would here be a - as both the index and the ioctl argument, PollAllValues uses b for the structure index and a as the ioctl argument.

It would appear, however, that no joystick HAS such axes, and that the b index is entirely unnecessary.

I tested three separate joysticks, and while that was far from a complete listing, I was unable to find a joystick with an axis above 0x08.

Sat, 08 Jun 2019 14:36:03 -0700Fixed bug 4593 - Respect CMake's BUILD_SHARED_LIBS default behavior
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:36:03 -0700] rev 12792
Fixed bug 4593 - Respect CMake's BUILD_SHARED_LIBS default behavior

tschwinger

Respect the BUILD_SHARED_LIBS variable when defined, and build either shared or static libs, which is CMake's default behavior (See https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html).

If the variable is not defined, the current behavior remains unchanged and both variants are built where the platform supports it. This way, it remains possible to build both in one shot, which seems convenient for distro builds and useful to promote some consistency between them.

Sat, 08 Jun 2019 14:34:38 -0700Fixed bug 4594 - Fix install location of CMake targets on Apple platforms
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:34:38 -0700] rev 12791
Fixed bug 4594 - Fix install location of CMake targets on Apple platforms

tschwinger

Followup to #3651

As already noted by Ryan, no framework is being built, so we better install to lib/cmake.

That code was originally part of a patch submitted by David Demelier, whose credit BTW got lost (I combined his patch for #3572 with fixes for #2576 and #3613 resulting in #3651 because things started to depend on another).

I tested that the configuration files are found correctly in the new location on MacOS X based on a hint to the root (see https://cmake.org/cmake/help/latest/command/find_package.html#search-procedure).

Sat, 08 Jun 2019 14:32:19 -0700Fixed bug 4600 - Dualshock 4 touchpad press is not detectable with SDL_JoystickGetButton
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:32:19 -0700] rev 12790
Fixed bug 4600 - Dualshock 4 touchpad press is not detectable with SDL_JoystickGetButton

Dexter Friedman

When using a Dualshock 4 controller (model numbers CUH-ZCT1U and CUH-ZCT2U), pressing anywhere on the center touchpad does not send an SDL_JOYBUTTONDOWN event. I have verified this with testjoystick:

Repro steps:
1. Plug in a DS4 over USB
2. Compile testjoystick and run: testjoystick.exe 0
3. Press and hold the touchpad. Observe that no lime green box appears

Expected behavior:
A lime green box appears while the touchpad is pressed.

Notes:
I've attached a patch here that works on my PC and produces the expected behavior in testjoystick, for both DS4 model numbers I listed earlier.

If I understand correctly, by exposing this as a joystick button, the gamecontroller API mapping can be modified with a change to gamecontrollerdb.txt in the future.

Sat, 08 Jun 2019 14:29:05 -0700Fixed bug 4603 - The iOS Test Xcode project file needs to add the metal framework
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 14:29:05 -0700] rev 12789
Fixed bug 4603 - The iOS Test Xcode project file needs to add the metal framework

Dominik Reichardt

Similar to bug #4088 the iOS test suite needs the metal framework to link. Same linking error in the final linking phase.

Sat, 08 Jun 2019 13:41:46 -0700Fixed bug 4605 - WASAPI_WaitDevice hang
Sam Lantinga <slouken@libsdl.org> [Sat, 08 Jun 2019 13:41:46 -0700] rev 12788
Fixed bug 4605 - WASAPI_WaitDevice hang

Matt Brocklehurst

We've noticed that if you are playing audio on Windows via the WASAPI interface and you unplug and reconnect the device a few times the program hangs.

We've debugged the problem down to

static void
WASAPI_WaitDevice(_THIS)
{

... snip ...
if (WaitForSingleObjectEx(this->hidden->event, INFINITE, FALSE) == WAIT_OBJECT_0) {
... snip ...
}

This WaitForSingleObjectEx does not havbe a time out defined, so it hangs there forever.

Our suggested fix we found was to include a time out of say 200mSec

We have done quite a bit of testing with this fix in place on various hardware configurations and it seems to have resolved the issue.

Sat, 08 Jun 2019 13:36:59 -0700hidapi: Use GameCube adapter controller port for player index
Zack Middleton <zack@cloemail.com> [Sat, 08 Jun 2019 13:36:59 -0700] rev 12787
hidapi: Use GameCube adapter controller port for player index
The Nintendo USB GameCube adapter has four controller ports. Return
the port number as 0 to 3 from SDL_JoystickGetPlayerIndex() and
SDL_JoystickGetDevicePlayerIndex().

Sat, 01 Jun 2019 18:27:46 +0100riscos: Add support for more pixel formats SDL-1.2
Jeffrey Lee <me@phlamethrower.co.uk> [Sat, 01 Jun 2019 18:27:46 +0100] rev 12786
riscos: Add support for more pixel formats

* Add support for red/blue swapped, 12bpp, and 16bpp screen modes
* Clean up code a bit by moving all local 'extern' declarations into headers & making local functions static
* Fix toggling to fullscreen to retain the current palette

Fri, 31 May 2019 00:26:21 +0100riscos: Remove obsolete unixlib includes SDL-1.2
Jeffrey Lee <me@phlamethrower.co.uk> [Fri, 31 May 2019 00:26:21 +0100] rev 12785
riscos: Remove obsolete unixlib includes