Tue, 07 Aug 2018 18:07:11 -0400haiku: Rename internal functions from BE_* to HAIKU_*
Ryan C. Gordon <icculus@icculus.org> [Tue, 07 Aug 2018 18:07:11 -0400] rev 12082
haiku: Rename internal functions from BE_* to HAIKU_*

Fixes Bugzilla #2349.

Tue, 07 Aug 2018 17:28:07 -0400configure: Make wayland sources depend on generated headers.
Ryan C. Gordon <icculus@icculus.org> [Tue, 07 Aug 2018 17:28:07 -0400] rev 12081
configure: Make wayland sources depend on generated headers.

Otherwise occasionally the sources will try to compile before the headers it
needs are generated.

Fixes Bugzilla #3977.

Tue, 07 Aug 2018 16:56:46 -0400evdev: On sudden termination, make sure keyboard isn't lost (thanks, Tadek!)
Ryan C. Gordon <icculus@icculus.org> [Tue, 07 Aug 2018 16:56:46 -0400] rev 12080
evdev: On sudden termination, make sure keyboard isn't lost (thanks, Tadek!)

"In release 2.0.6, when Linux evdev keyboard support has been moved to a
separate source file, a feature was added to disable normal keyboard event
processing to prevent "spilling" keystrokes to background virtual console.

This feature has one unpleasant side effect: if application fails to call
`SDL_Exit` before termination or crashes with fatal signal, console is left
in unusable state with keyboard not working and no possibility to switch
virtual console. If user has a chance, he can login remotely and restore
keyboard with `kbd_mode`, otherwise the only option is to reboot the machine.

This patch fixes that problem by intercepting fatal signals (with `sigaction`)
and process termination (with `atexit`), to restore keyboard state, if it
wasn't properly restored with `SDL_Exit`.

The function registered with `atexit` also restores original signal handlers,
to prevent leaving invalid handlers after SDL library is unloaded, if it was
loaded dynamically with `dlopen`.

No signal handlers or `atexit` function are installed if SDL boolean hint
`SDL_HINT_NO_SIGNAL_HANDLERS` is `SDL_TRUE`.

Additionally, if environment variable `SDL_INPUT_LINUX_KEEP_KBD` exists,
keyboard initialization function completely skips disabling keyboard. This
can be useful for debugging."

Fixes Bugzilla #4193.

Tue, 07 Aug 2018 16:49:18 -0400alsa: optionally run entire pipeline non-blocking.
Ryan C. Gordon <icculus@icculus.org> [Tue, 07 Aug 2018 16:49:18 -0400] rev 12079
alsa: optionally run entire pipeline non-blocking.

Tue, 07 Aug 2018 13:04:15 -0400audio: Deal with device shutdown more carefully.
Ryan C. Gordon <icculus@icculus.org> [Tue, 07 Aug 2018 13:04:15 -0400] rev 12078
audio: Deal with device shutdown more carefully.

This would cause problems in various ways, but specifically triggers an
assert when you close a WASAPI capture device in an app running over RDP.

Related to (but not the actual bug) in Bugzilla #3924.

Tue, 07 Aug 2018 12:06:31 -0400haptic: Fix initial detection of haptic devices on Linux system
Mai Lavelle <mai.lavelle@gmail.com> [Tue, 07 Aug 2018 12:06:31 -0400] rev 12077
haptic: Fix initial detection of haptic devices on Linux system

SDL_UDEV_Scan must be called during SDL_SYS_HapticInit to ensure devices
outside of the 0-31 range are added to the list of haptic devices.

Fixes Bugzilla #3923.

Tue, 07 Aug 2018 10:10:02 +0300linux/SDL_sysjoystick.c: Fix bug #3193: SDL-1.2
Ozkan Sezer <sezeroz@gmail.com> [Tue, 07 Aug 2018 10:10:02 +0300] rev 12076
linux/SDL_sysjoystick.c: Fix bug #3193:

Protect against any axis that isn't reported by EVIOCGBIT but still
sends EV_ABS events; patch from <maxxus@gmail.com>. Original issue
and description:

The Dualshock 3's motion sensors don't seem to be reported by the call
to EVIOCGBIT but they still send EV_ABS events. Because they're not
reported by EVIOCGBIT they're not assigned a proper axis ids and the
default of 0 is used, which is the valid id for the left analog sticks
left/right axis. The attached patch sets the default axis id to ABS_MAX
and then checks the axis id before performing the update. This will
protect against EV_ABS events for axes that aren't reported or handled
correctly.

Mon, 06 Aug 2018 13:00:11 -0700Backed out changeset 448e9f627e71
Sam Lantinga <slouken@libsdl.org> [Mon, 06 Aug 2018 13:00:11 -0700] rev 12075
Backed out changeset 448e9f627e71
It turns out the mapping is correct, just the name was confusing

Mon, 06 Aug 2018 11:58:08 -0700Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices
Sam Lantinga <slouken@libsdl.org> [Mon, 06 Aug 2018 11:58:08 -0700] rev 12074
Removed mapping for VID/PID 0x0079/0x0006, which is a generic PCB used in many different devices

Different device with same vid/pic that is kind of a Saitek shape:
https://www.trust.com/en/product/17416-gxt-24-runa-compact-gamepad

n64 with same ID
https://bbs.archlinux.org/viewtopic.php?id=163488

PS shaped with numbers for buttons
https://pineight.com/mw/index.php?title=USB_game_controller#DragonRise_Inc._Generic_USB_Joystick

fightstick with same vid/pid
https://retropie.org.uk/forum/topic/7594/bartop-2-player-zero-delay-encoders-not-working

Sun, 05 Aug 2018 10:01:01 +0300SDL_expf: return SDL_exp() instead of SDL_uclibc_exp() for consistency.
Ozkan Sezer <sezeroz@gmail.com> [Sun, 05 Aug 2018 10:01:01 +0300] rev 12073
SDL_expf: return SDL_exp() instead of SDL_uclibc_exp() for consistency.