Ozkan Sezer
f14a8bfa4e
fix whitespace.
2021-12-01 21:33:02 +03:00
Ozkan Sezer
b71bfdaafb
SDL_iconv.c (encodings): mark "WCHAR_T" as ENCODING_UTF16LE for OS/2 too
...
whcar_t is unsigned short in os/2, like windows
2021-12-01 20:50:40 +03:00
Davis Mosenkovs
66b0a6ee15
workaround for libmali gbm_device_get_fd()
...
gbm_device_get_fd() in at least some libmali versions duplicates handle.
Other implementations do not do duplication. To prevent handle leak save
drm_fd in SDL_DisplayData.
2021-11-30 16:20:24 -08:00
Ozkan Sezer
662ea5abe4
minor correction after previous patch and minor tidy-up.
2021-12-01 01:40:24 +03:00
Ozkan Sezer
70c5e91d0f
os/2 optionally builds against libiconv.
2021-12-01 01:20:10 +03:00
Ozkan Sezer
b20484e803
minor os/2 reorganization for iconv
2021-12-01 01:20:02 +03:00
Sam Lantinga
8c91cf7dba
Always create a full 256-entry map in case color values are out of range
...
Fixes https://github.com/libsdl-org/SDL/issues/5042
2021-11-30 12:37:39 -08:00
Sam Lantinga
a4c04ad230
Fixed building with iOS SDK prior to 13.0
...
Fixes https://github.com/libsdl-org/SDL/pull/5045
2021-11-30 10:32:39 -08:00
Sam Lantinga
8589134f16
Fixed potential buffer overflow in YUV conversion
...
Fixes https://github.com/libsdl-org/SDL/issues/5043
2021-11-30 10:23:21 -08:00
Ozkan Sezer
09465a9083
hidapi, windows: replace a strncpy() with plain memcpy()
...
mainstream has a similar change, already.
2021-11-30 21:10:10 +03:00
Sam Lantinga
5fc901d4f3
Updated to version 2.0.19 for development
2021-11-30 09:58:21 -08:00
Cameron Gutman
715d481271
windows: Fix GUI key state when grabbing the keyboard
...
When our keyboard grab hook is installed, GetKeyState() will return 0 for the
GUI keys even when they are pressed. This leads to spurious key up events when
holding down the GUI keys and the inability to use any key combos involving
those modifier keys.
2021-11-29 20:07:19 -08:00
Sam Lantinga
b6bc3a6b0e
Added a mapping for the PS4 touchpad button on Windows
...
Fixes https://github.com/libsdl-org/SDL/issues/5035
2021-11-29 09:00:54 -08:00
David Gow
f6fdbc1e37
video: x11: Fix an invalid SDL_LogError() call
...
This fixes a compile warning — and possible invalid memory read —
introduced in 9c03d255
("Add back X11 legacy WM_NAME encodings"), which
was part of PR #5029 , fixing Bug #4924 .
The issue is with one of the added warnings in X11_GetWindowTitle().
Basically, the "title" variable passed to SDL_LogError() hasn't been
initialised yet: we could pass propdata in directly, but it's better to
move the SDL_LogError() call until after title is set, IMHO.
This fixes the following warning from gcc (SUSE Linux) 11.2.1:
In file included from /home/david/Development/SDL/src/video/x11/../../SDL_internal.h:45,
from /home/david/Development/SDL/src/video/x11/SDL_x11window.c:21:
/home/david/Development/SDL/src/video/x11/SDL_x11window.c: In function 'X11_GetWindowTitle':
/home/david/Development/SDL/src/video/x11/../../dynapi/SDL_dynapi_overrides.h:33:22: warning: '%s' directive argument is null [-Wformat-overflow=]
33 | #define SDL_LogDebug SDL_LogDebug_REAL
/home/david/Development/SDL/src/video/x11/SDL_x11window.c:720:13: note: in expansion of macro 'SDL_LogDebug'
720 | SDL_LogDebug(SDL_LOG_CATEGORY_VIDEO, "Failed to convert WM_NAME title expecting UTF8! Title: %s", title);
| ^~~~~~~~~~~~
2021-11-29 07:13:25 -08:00
Sam Lantinga
3ba9276aff
Don't fail the sensor init if we couldn't create a sensor manager (i.e. we're running on Wine)
...
Fixes https://github.com/libsdl-org/SDL/issues/5031
2021-11-28 21:14:02 -08:00
Sam Lantinga
6872cb12e6
null-terminate the message buffer if FormatMessage() fails
2021-11-28 21:10:46 -08:00
Fredrick Brennan
b5d47aa297
Fix comment style for old compilers (//
⇒/**/
)
2021-11-28 21:00:29 -08:00
Fredrick Brennan
367684b0c2
Add patches suggested by @slouken in round 1 review
2021-11-28 21:00:29 -08:00
Fredrick Brennan
9c03d25543
Add back X11 legacy WM_NAME encodings
...
Closes #4924 .
Based on patches of the past, such as this work by James Cloos in July
2010:
d7d98751b7
,
as well as code comments in the Perl module X11::Protocol::WM
(https://metacpan.org/pod/X11::Protocol::WM ) and even the code to Xlib
itself, which taught me that we should never have been using
`XStoreName`, all it does is call `XChangeProperty`, hardcoded to
`XA_STRING`!
What can I say, when the task is old school, the sources are too 😂
2021-11-28 21:00:29 -08:00
Ethan Lee
72e53e4b87
wayland: Clear driverdata before calling ResetDisplayModes
2021-11-28 19:25:22 -05:00
Sam Lantinga
942973dd86
Use mouse ID 0 for raw mouse events
...
We don't track state for each mouse individually, so we should just use the global mouse ID for all events.
Fixes https://github.com/libsdl-org/SDL/issues/5026
2021-11-28 09:27:28 -08:00
Sam Lantinga
dd2f91118e
Fixed warnings with Windows SDK 10.0.19041
...
Fixes https://github.com/libsdl-org/SDL/issues/4998
Also breaks https://github.com/libsdl-org/SDL/issues/4998 for older SDKs, but we're going to ignore them, they're just incorrect.
2021-11-27 20:18:29 -08:00
Sam Lantinga
c2904c8ce7
Fixed compile warnings and errors
...
Fixes https://github.com/libsdl-org/SDL/issues/4998
2021-11-27 11:16:15 -08:00
Ozkan Sezer
8f17af5e21
hidapi: mark libusb function pointers with LIBUSB_CALL.
2021-11-27 11:02:04 -08:00
Sam Lantinga
a6cbe0ab87
Controllers are always centered at zero using XInput and WGI
2021-11-27 10:58:12 -08:00
Sam Lantinga
09b7ca27d6
Get the current WGI controller list at startup
...
On Win32 this list is empty and we always get controller added events. On UWP, this list is populated and we don't get controlle added events for currently connected controllers.
2021-11-27 10:53:20 -08:00
Sam Lantinga
12895eca1a
Fixed WGI initialization on Win32
2021-11-27 10:52:58 -08:00
Sam Lantinga
110e4e1334
Use WGI instead of XInput for Windows 10 UWP apps
...
Fixes https://github.com/libsdl-org/SDL/issues/5017
2021-11-27 10:24:32 -08:00
Sam Lantinga
e04a0221e3
Fixed crash running SDL test programs on UWP
2021-11-27 10:22:37 -08:00
Ozkan Sezer
5a0ea7fb17
Check for O_CLOEXEC definition in fcntl.h at configuration time,
...
If not available, define it internally as 0 (in SDL_internal.h).
Define it as available for macOS >= 10.7 in SDL_config_macosx.h.
2021-11-27 19:23:10 +03:00
Cameron Gutman
f903a39e13
haptic: Fix SDL_MouseIsHaptic() always returning SDL_TRUE on Android
2021-11-27 19:18:41 +03:00
Sam Lantinga
11a9cd6344
Fixed building SDL on UWP
2021-11-27 08:14:50 -08:00
Mathieu Eyraud
02021ae753
Return capabitlities from RawInput joystick
2021-11-27 07:26:10 -05:00
Eric Wasylishen
b786c10013
SDL_render_gl.c: GL_RunCommandQueue: always set viewport_dirty on macOS
...
Without this, moving the window changes the viewport and causes contents
to render stretched.
Fixes #1504
2021-11-27 07:12:34 -05:00
Sam Lantinga
4f683f01d4
Fixed potentially truncated entry in stack trace
2021-11-26 17:27:07 -08:00
Sam Lantinga
4e5839a5f4
Fixed compiling for Raspberry Pi
2021-11-26 13:45:08 -08:00
Ryan C. Gordon
86c0cf2bb1
software: Draw a single pixel for a line with the same start/end point.
...
Otherwise it would drop it, which seems like a bug to me, as it normally
fills the endpoint on lines.
Reference #2006 .
2021-11-26 14:34:51 -05:00
Sam Lantinga
a2e8565230
The Google Pixel fingerprint sensor isn't actually a joystick
...
Fixes https://github.com/libsdl-org/SDL/issues/4971
2021-11-26 11:04:15 -08:00
Sam Lantinga
67b5de5b41
Fixed build warnings
2021-11-26 10:18:08 -08:00
Sam Lantinga
2ca2ad76da
Fixed build warnings
2021-11-26 10:13:45 -08:00
Sam Lantinga
f90164a62f
Fixed mapping for the G-Shark GS-GP702
...
Fixes https://github.com/libsdl-org/SDL/issues/5006
2021-11-26 09:02:12 -08:00
Sam Lantinga
7242075b2b
Updated version to 2.0.18 for release
2021-11-26 08:12:45 -08:00
Sam Lantinga
d861820465
SDL_JoystickGetAttached() doesn't need to be noisy for NULL joystick
...
Fixes https://github.com/libsdl-org/SDL/issues/5008
2021-11-26 07:57:48 -08:00
Sam Lantinga
30f04d63e6
HIDAPI is only reliable on Android 4.3 and newer
...
Fixes https://github.com/libsdl-org/SDL/issues/4955
2021-11-26 07:15:46 -08:00
Ryan C. Gordon
d713a68071
pulseaudio: wait until at least 1/8th (!) of the mixbuffer is available.
...
This is to workaround systems where we hang in playback because the buffer
does not report the space for whatever reason. The system will instead block
in PlayDevice, which always immediately follows WaitDevice in modern times
so this works out, and it seems to keep the device moving forward.
For a future revision, we are either going to clean this up more properly,
or attempt to move to PulseAudio's pa_stream_set_write_callback() API, but
this will do for SDL 2.0.18.
Reference #4387 for discussion and further information.
2021-11-25 22:32:40 -05:00
Ozkan Sezer
53aa8eec5f
minor cleanup for watcom _inline keyword.
2021-11-25 17:00:24 +03:00
Sylvain
d5813776db
Release UDEV ressources
2021-11-25 07:24:18 -05:00
Cameron Gutman
b99510836e
SDL_mfijoystick.m: Fix -Wshadow warning
2021-11-24 13:04:50 -06:00
DarkContact
e77cfb9a11
Fixed d3d11 renderer creation
2021-11-24 10:11:35 -05:00
Sam Lantinga
57366285d8
Only send display events for hotplugged displays, not the initial state
2021-11-23 20:14:18 +00:00
Sam Lantinga
a3c05d2f34
Added debug output for display connect/disconnect events
2021-11-23 19:43:01 +00:00
Ozkan Sezer
f8900583e5
removed windows winmm joystick driver
2021-11-23 17:04:40 +03:00
Sylvain
381f99a3fd
Fix warnings: re-add enum forward declaration
2021-11-23 10:58:04 +01:00
Sylvain
dd6817b3b7
Fix warnings: static function, {} initializier, un-needed enum forward declaration
2021-11-23 10:47:34 +01:00
Sylvain
fae7034901
Fix warnings: static, include, un-initialized vairables
2021-11-23 10:33:12 +01:00
Sylvain
2a24418bd3
More "Integer overflow generates Illegal instruction under sanitizers" (see bug #4995 )
2021-11-23 09:44:37 +01:00
Sylvain
9c72adc86c
More "Integer overflow generates Illegal instruction under sanitizers" (see bug #4995 )
2021-11-23 09:41:01 +01:00
Sylvain
8dd6edec00
Fixed bug #3232 - Integer overflow generates Illegal instruction under sanitizers + see bug #4995
2021-11-23 09:30:42 +01:00
Ozkan Sezer
e18be04bc6
Fixed undefined behavior in QueueCmdSetDrawColor()
...
Fixes https://github.com/libsdl-org/SDL/issues/4995
Patch from Andrew Kelley
2021-11-23 08:01:02 +03:00
Sylvain
c878d9a0aa
Haiku: comment this should not be SDL_free()
2021-11-22 08:38:46 -08:00
Sylvain
aef7105408
Use SDL_free
2021-11-22 08:38:46 -08:00
Sylvain
2004aaf3bb
SDL_wave: use SDL_free
2021-11-22 08:38:46 -08:00
Sylvain
0445c13aae
Remove 'malloc' from comment
2021-11-22 08:38:46 -08:00
Sylvain
155db97d14
Remove 'malloc' from comment
2021-11-22 08:38:46 -08:00
Sylvain
c3633d2c99
Haiku: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
79b37cc55f
Pandora: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
10ffcbb115
QNX: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
e72beeb2a0
Remove 'malloc' from comment
2021-11-22 08:38:46 -08:00
Sylvain
38cfe25bc5
Remove 'malloc' from comment
2021-11-22 08:38:46 -08:00
Sylvain
4d566e5d5d
VITA, PSP: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
9fcc630fb3
X11: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
19bf36db15
DirectFB: use SDL_malloc
2021-11-22 08:38:46 -08:00
Sylvain
8fb19d212e
Vita: unneeded include
2021-11-22 08:38:46 -08:00
Sylvain
e702a4e520
PSP: un needed include
2021-11-22 08:38:46 -08:00
Sylvain
8e851a277d
Remove malloc from comment
2021-11-22 08:38:46 -08:00
Sylvain
0ef9d26622
cpuinfo: remove malloc from comments
2021-11-22 08:38:46 -08:00
Sylvain
30338beb61
Minor comment
2021-11-22 08:38:46 -08:00
Sylvain
fb218e582a
PSP: use SDL_malloc/SDL_free
2021-11-22 08:38:46 -08:00
Sylvain
5a7a7ba570
Don't use "realloc" in comment so that it doesn't show up
2021-11-22 08:38:46 -08:00
Sylvain
b4aeaa30a1
Use SDL_calloc / SDL_free
2021-11-22 08:38:46 -08:00
Sylvain
cb9f85e8d0
Don't use "round", so that it's doesn't show up while searching for the function
2021-11-22 08:38:46 -08:00
Sylvain
6fb50bd0a6
Don't use "exp" as a name so that it's doesn´t show up with searching for the function
2021-11-22 08:38:46 -08:00
Sylvain
161dd83c9a
Don´t use "trunc" as var name, since it's also a function
2021-11-22 08:38:46 -08:00
Sylvain
d31251b014
use SDL's functions version inplace of libc version
2021-11-22 08:38:46 -08:00
Ozkan Sezer
ee2afa00ba
SDL_mfijoystick.m: fix build using older toolchains
...
Fixes https://github.com/libsdl-org/SDL/issues/4992
Fixes https://github.com/libsdl-org/SDL/issues/4958
2021-11-22 05:11:10 +03:00
Sam Lantinga
c97b721868
Added SDL_PremultiplyAlpha() to premultiply alpha on a block of SDL_PIXELFORMAT_ARGB8888 pixels
2021-11-21 12:18:10 -08:00
Sylvain
49369142bd
Fixed bug #4625 : with integer scale, viewport (as reported by SDL_RenderGetViewport) becomes -2147483648x-2147483648
...
0 isn't valid scale. Min integer scale is 1.0f
2021-11-21 17:40:48 +01:00
Sylvain
a0cb079a42
Fixed bug #4982 - Failed to open audio_device on OpenSLES / Android 5.x with freq 96khz+
2021-11-21 15:45:08 +01:00
Ryan C. Gordon
ceb9e9a809
cocoa: Removed a debug printf call.
2021-11-21 00:21:41 -05:00
Ryan C. Gordon
18715acb55
cocoa: Position non-left mouse button events in background windows correctly.
...
Fixes #4828 .
2021-11-21 00:14:18 -05:00
Cameron Gutman
343fa61215
hid: fix inconsistent indentation
2021-11-20 13:17:59 -06:00
Cameron Gutman
db60b27188
hid: Only enumerate IOHIDDevices that are likely to be joysticks
...
Touching HID devices with keyboard usages will trigger a keyboard capture
permission prompt on macOS 11+. See #4887
Like the IOKit joystick backend, we accept HID devices that have joystick,
gamepad, or multi-axis controller usages. We also allow the Valve VID for
the Steam Controller, just like the Windows HIDAPI implementation does.
2021-11-20 13:13:17 -06:00
Ryan C. Gordon
23b7bdef87
offscreen: Don't fail to create a window because of driver_loaded politics.
...
Fixes #4922 .
2021-11-20 14:12:11 -05:00
Ozkan Sezer
504e7aa59b
minor tidy-up for ifdefs & co.
2021-11-20 21:51:10 +03:00
Sylvain
b6e8651ae9
Audio 6.1 should be allowed now (see #4974 )
2021-11-20 15:31:21 +01:00
Ozkan Sezer
990fb668f7
tests: several -Wwrite-strings fixes.
2021-11-20 01:02:02 +03:00
Sam Lantinga
665865eda2
If the hardware is in an error state, the final page flip may not come.
...
We should either put a timeout on the wait when destroying the window, or skip it entirely.
2021-11-19 09:58:13 -08:00
Sam Lantinga
6828955ddf
Trim any extra platform strings from mappings when they're returned to the application
2021-11-19 09:58:11 -08:00
Cameron Gutman
881a674926
rawinput: Only access SDL_RAWINPUT_mutex if initialized
...
We can also ditch the lock in RAWINPUT_JoystickQuit() now that the joystick
subsystem quits drivers in reverse order. There's no chance of a racing call
to RAWINPUT_WindowProc() anymore.
2021-11-19 08:19:30 -06:00
Cameron Gutman
1237142be3
joystick: Quit drivers in reverse order to ensure dependencies are not broken
...
SDL_WINDOWS_JoystickDriver depends on callbacks in SDL_RAWINPUT_JoystickDriver
and SDL_HIDAPI_JoystickDriver being available. It also manages the common
WindowProc used for joystick detection in both WINDOWS and RAWINPUT drivers.
If we don't tear them down backwards, there's a window of time where we could
invoke RAWINPUT_WindowProc() after RAWINPUT_JoystickQuit() was called.
2021-11-19 08:19:30 -06:00
Ozkan Sezer
b67965979a
SDL_hidapi.c: fix SDL_udev.h include path
...
fixes https://github.com/libsdl-org/SDL/issues/4981
2021-11-19 11:55:50 +03:00
Ethan Lee
a7a54e6452
wayland: Add support for display connect/disconnect events
2021-11-18 00:44:08 -05:00
Sylvain
5be8a22113
Add audio conversion from/to 61
2021-11-17 16:04:54 -08:00
Ozkan Sezer
d2cf191936
hidapi, linux: merged a minor warning + code style fix from mainstream.
2021-11-17 10:00:10 +03:00
Ethan Lee
5cc23868ed
wayland: Add support for SDL_DisplayOrientation
2021-11-16 11:58:23 -08:00
Sam Lantinga
40d808620d
SDL_classic_joysticks defaults off
2021-11-15 20:17:14 -08:00
Sam Lantinga
66058bbbd5
Fixed exception accessing Bluetooth devices on Android 12
...
Since accessing Bluetooth prompts the user for permission on both Android and iOS, and we only need it for Steam Controller support, we'll leave it off by default. You can enable it by setting the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM to "1" before calling SDL_Init()
Fixes https://github.com/libsdl-org/SDL/issues/4952
2021-11-15 16:52:56 -08:00
Sam Lantinga
be5b4d980d
Added nativeGetHintBoolean for Java code
2021-11-15 16:52:54 -08:00
Sam Lantinga
9ec2b35147
Fixed the GLES2 shader count to be in sync with the enum
2021-11-15 13:45:53 -08:00
Sylvain
b649314d62
Add comment to audio clipping (see bug #4104 )
2021-11-15 13:43:40 +01:00
Sylvain
d4df5d33c5
GLES2: prevent batching if blend mode changes (see bug #4964 )
2021-11-15 09:43:44 +01:00
Sylvain
92f2fdfc84
GLES2: batch non joined lines (see #4964 )
2021-11-15 09:36:18 +01:00
Sylvain
17f156fae5
Fixed bug #4964 - opengles2 & batching = conjoined lines
...
put back the initial switch case because groups of joined lines cannot be batched.
2021-11-15 09:08:09 +01:00
Sylvain
d8888e468e
Fixed bug #4964 - opengles2 & batching = conjoined lines
2021-11-15 08:37:49 +01:00
Sam Lantinga
cc094f4d7c
Fixed building with the macOS 10.8 SDK
2021-11-14 20:15:48 -08:00
Cameron Gutman
d7d67af441
mouse: Fix Y value in motion events when confinement is active
2021-11-14 17:52:41 -06:00
Zack Middleton
1cd3e83756
cocoa: Fix abort on touch event types without a subtype
...
macOS 10.6 has some touch NSEvents which do not have a subtype
(Begin/EndGesture, Magnify, Rotate, Swipe) and cause an uncaught
exception which triggers SIGABRT and the program exits.
As it is, none of the macOS 10.6 touch events are detected as a
trackpad (including Gesture due to using different subtypes).
2021-11-14 15:21:51 -08:00
Ozkan Sezer
781caec2b2
SDL_waylandevents.c (keyboard_handle_keymap): silenced -Wwrite-strings .
2021-11-15 00:55:24 +03:00
Ozkan Sezer
5c067906ba
wasapi: AvSetMmThreadCharacteristicsW takes an LPCWSTR param, not LPWSTR
2021-11-15 00:55:04 +03:00
Ozkan Sezer
3eb9bfac7a
win32 rawinput & wgi joystick: avoid -Werror=declaration-after-statement
2021-11-14 22:22:50 +03:00
Sam Lantinga
c55ab9631f
Added a hint for alternate OpenGL NV12 data format
2021-11-13 22:21:57 -08:00
Ozkan Sezer
8a6e48d46d
constified SDL_RegisterApp()
2021-11-14 04:40:50 +03:00
Ozkan Sezer
7dfd22ac5e
fix XGetDefault signature - its first and second params are _Xconst
2021-11-14 02:32:00 +03:00
Ozkan Sezer
c7aa04d03e
SDL_test_harness.c: avoid -Wwrite-strings
2021-11-14 02:31:20 +03:00
Ozkan Sezer
be7b663c2c
audio/winmm/SDL_winmm.c (SetMMerror): constify.
2021-11-14 02:30:56 +03:00
Ozkan Sezer
e4aa608a5c
change (char*) casts to (const char*) in WIN_UTF8 macros
2021-11-14 02:30:34 +03:00
Cameron Gutman
674f361dec
wayland: Fix memory leaks in clipboard code
2021-11-13 11:44:36 -06:00
Cameron Gutman
c8061ed2d1
alsa: Fix possible uninitialized string
2021-11-13 10:33:37 -06:00
Ozkan Sezer
a2c27d39cf
SDL_hidapi_switch.c (ConstructSubcommand): lose use of '&' on rumbleData
...
SwitchCommonOutputPacket_t->rumbleData is an array.
2021-11-13 17:56:28 +03:00
Ozkan Sezer
6ad0fb8462
SDL_hidapi_ps4.c, SDL_hidapi_ps5.c: use SDL_zeroa()
2021-11-13 17:55:10 +03:00
Sylvain
70c8d20a46
Revert previous commit a50ca98e2b
(see bug #4625 )
2021-11-13 15:04:19 +01:00
Sylvain
a50ca98e2b
Fixed bug #4625 - SDL_RenderSetLogicalSize issues
...
viewport becomes -2147483648x-2147483648 when logical_w/h is greater than window size.
division should be done with floats
2021-11-13 14:48:36 +01:00
Ozkan Sezer
a948ff8494
SDL_hidapijoystick.c: worked around a bogus 'unreachable code' warning.
2021-11-13 11:50:02 +03:00
Cameron Gutman
eb3f1462b8
x11: Fix memory leak in X11_CreatePixmapCursor()
2021-11-12 18:26:26 -06:00
Cameron Gutman
704edf6323
audio: Fix crash calling SDL_OpenAudio() after SDL_AudioInit() fails
...
The SDL_WasInit() checks don't work when using SDL_AudioInit() directly,
which is exactly what audio_initOpenCloseQuitAudio() in testautomation
does.
2021-11-12 17:07:22 -06:00
Cameron Gutman
78013aeef9
alsa: Fix use-after-free when reinitializing
2021-11-12 16:57:24 -06:00
Ozkan Sezer
3dc7813ae4
more whitespace tidy-ups in SDL_os2messagebox.c
2021-11-12 20:47:02 +03:00
Sam Lantinga
c2dd50a9a0
Fixed whitespace
2021-11-12 08:28:02 -08:00
Sam Lantinga
074e613bbb
Fixed typo
2021-11-12 03:04:11 -08:00
Sam Lantinga
35d90f17e1
Better implementation of SDL_SetWindowMouseGrab() and SDL_SetWindowMouseRect() on macOS
2021-11-12 03:04:11 -08:00
Mathieu Eyraud
5fc7a90a8b
Fix refcounting in SDL_hid_exit
2021-11-12 01:25:15 -08:00
Sam Lantinga
162772aa63
Fixed build warnings on Android
2021-11-11 20:50:54 -08:00
Cameron Gutman
50971577e4
dinput: Fix memory leak when SDL_DINPUT_JoystickPresent() returns true
2021-11-11 22:35:41 -06:00
Misa
3bf7994fe2
Add and use SDL_FALLTHROUGH
for fallthroughs
...
Case fallthrough warnings can be suppressed using the __fallthrough__
compiler attribute. Unfortunately, not all compilers have this
attribute, or even have __has_attribute to check if they have the
__fallthrough__ attribute. [[fallthrough]] is also available in C++17
and the next C2x, but not everyone uses C++17 or C2x.
So define the SDL_FALLTHROUGH macro to deal with those problems - if we
are using C++17 or C2x, it expands to [[fallthrough]]; else if the
compiler has __has_attribute and has the __fallthrough__ attribute, then
it expands to __attribute__((__fallthrough__)); else it expands to an
empty statement, with a /* fallthrough */ comment (it's a do {} while
(0) statement, because users of this macro need to use a semicolon,
because [[fallthrough]] and __attribute__((__fallthrough__)) require a
semicolon).
Clang before Clang 10 and GCC before GCC 7 have problems with using
__attribute__ as a sole statement and warn about a "declaration not
declaring anything", so fall back to using the /* fallthrough */ comment
if we are using those older compiler versions.
Applications using SDL are also free to use this macro (because it is
defined in begin_code.h).
All existing /* fallthrough */ comments have been replaced with this
macro. Some of them were unnecessary because they were the last case in
a switch; using SDL_FALLTHROUGH in those cases would result in a compile
error on compilers that support __fallthrough__, for having a
__attribute__((__fallthrough__)) statement that didn't immediately
precede a case label.
2021-11-12 07:26:14 +03:00
Sam Lantinga
9c3bcf8e8a
Added SDL_hid_ble_scan() for pairing Steam Controllers on iOS and tvOS
2021-11-11 17:31:14 -08:00
Sam Lantinga
abc12a832c
Revert "Add and use SDL_FALLTHROUGH
for fallthroughs"
...
This reverts commit 66a08aa391
.
This causes problems with older compilers:
https://github.com/libsdl-org/SDL/pull/4791#issuecomment-966630997
2021-11-11 15:58:44 -08:00
Sam Lantinga
36b2690e40
Moved SDL HIDAPI functions into a single block for the ABI
2021-11-11 15:48:56 -08:00
Cameron Gutman
fe09a4930a
joystick: Add APIs to query rumble support
2021-11-11 15:10:08 -08:00
Cameron Gutman
afccabb881
joystick: Add capability flags for rumble and trigger rumble
...
When API limitations force us to guess, we favor a false positive (reporting
support when it doesn't exist) compared to a false negative.
2021-11-11 15:10:08 -08:00
Cameron Gutman
1ccfbf963e
joystick: Convert HasLED() into a generic GetCapabilities() function
2021-11-11 15:10:08 -08:00