|
ec58a817
|
2022-10-05T19:26:09
|
|
Fixes made in response to running a static code analyzer under MS Windows.
Most of these are probably harmless, but the changes to SDL_immdevice.c and SDL_pixels.c appear to have fixed genuine bugs.
SDL_audiocvt.c: By separating the calculation of the divisor, I got rid of the suspicion that dividing a double by an integer led to loss of precision.
SDL_immdevice.c: Added a missing test, one that could have otherwise led to dereferencing a null pointer.
SDL_events.c, SDL_gamecontroller.c, SDL_joystick.c, SDL_malloc.c, SDL_video.c: Made it clear the return values weren't used.
SDL_hidapi_shield.c: The size is zero, so nothing bad would have happened, but the SDL_memset() was still being given an address outside of the array's range.
SDL_dinputjoystick.c: Initialize local data, just in case IDirectInputDevice8_GetProperty() isn't guaranteed to write to it.
SDL_render_sw.c: drawstate.viewport could be null (as seen on line 691).
SDL.c: SDL_MostSignificantBitIndex32() could return -1, though I don't know if you want to cope with that (what I did) or SDL_assert() that it can't happen.
SDL_hints.c: Replaced boolean tests on pointer values with comparisons to NULL.
SDL_pixels.c: Looks like the switch is genuinely missing a break!
SDL_rect_impl.h: The MacOS static checker pointed out issues with the X comparisons that were handled by assertions; I added assertions for the Y comparisons.
SDL_yuv.c, SDL_windowskeyboard.c, SDL_windowswindow.c: Checked error-result returns.
|
|
7ebdae5d
|
2022-11-16T11:45:41
|
|
cocoa: Fix OpenGL deprecation warning.
|
|
7c760f7f
|
2022-11-16T11:32:08
|
|
cocoa: Update CVDisplayLink timing when screen changes.
This handles both the window moving to a new display and
changing the current display's refresh rate in System
Preferences
Reference Issue #4918.
|
|
1fd66cc8
|
2022-11-16T10:15:21
|
|
Revert "cocoa: Backed out CVDisplayLink code for macOS vsync."
This reverts commit 04b50f6c6bef67b744b192c78775771b51ff2141.
It turns out OpenGL vsync has broken again in macOS 12, so
we're reintroducing our CVDisplayLink code to deal with it,
again.
Reference Issue #4918.
|
|
9d67686a
|
2022-11-16T10:08:40
|
|
haptic: Deal with deprecated macOS symbol.
|
|
6801d676
|
2022-11-16T09:52:33
|
|
Revert "pulseaudio: Only use PA_STREAM_ADJUST_LATENCY if buffer isn't super small."
This reverts commit d8b1ef42aee52dad4ac3de69795ca2e8d2fd7704.
This turned out to be unnecessary (it was a problem on the user's system,
not an SDL bug).
Reference Issue #6121.
|
|
55534e27
|
2022-11-01T15:39:13
|
|
cmake: add time out to tests to avoid ci timeouts
|
|
500bac0b
|
2022-11-01T13:06:39
|
|
cmake: include FIndPkgConfig.cmake through find_package
|
|
cfa76973
|
2022-11-01T11:33:39
|
|
cmake: FindOpenGL.cmake shipped by emscripten does not have OpenGL::GL
|
|
2e47016b
|
2022-11-01T15:28:57
|
|
ci: use Ninja generator in hop of accelerating the build
|
|
76e3cf38
|
2022-11-01T11:04:45
|
|
cmake: use custom add_sdl_test_executable macro to add test
|
|
819b0143
|
2022-11-01T10:42:57
|
|
cmake: enable SDL_TEST by default for emscripten
|
|
a22fcf77
|
2022-11-01T13:40:19
|
|
cmake: older emscripten releases have a broken FindOpenGL.cmake
This is fixed since 3.1.10: https://github.com/emscripten-core/emscripten/commit/485a7b4d6f84d4bc3b594ff81d39b6b143c8d598#diff-034f4d123f23ec5493d0fbf28cba1c36e404a991f286c8d031a22799e4e8b0e5
|
|
d8884b84
|
2022-11-01T13:10:46
|
|
emscripten: fix warnings in tests
|
|
a71e558d
|
2022-11-01T13:09:52
|
|
cmake: testshader needs -sLEGACY_GL_EMULATION on Emscripten
|
|
81fd45f7
|
2022-11-16T15:13:04
|
|
ci: Disable emscripten build time tests
|
|
55384db8
|
2022-11-01T13:09:29
|
|
cmake: emscripten has libunwind.h, libunwind.a has missing symbols
|
|
6e46090a
|
2022-11-01T13:08:38
|
|
cmake: check ALL headers inside the look (including sys/types.h)
|
|
903301c6
|
2022-11-16T02:04:59
|
|
wayland: Always use integer scaling for cursors.
Cursors don't get fractionally scaled, so always scale system cursor sizes to the next whole integer.
|
|
d8b1ef42
|
2022-11-15T22:18:51
|
|
pulseaudio: Only use PA_STREAM_ADJUST_LATENCY if buffer isn't super small.
Fixes #6121.
|
|
06492c59
|
2022-11-16T00:20:28
|
|
CI, MSVC: update to use microsoft/setup-msbuild v1.1.3.
Fixes github deprecation warnings
|
|
02ab7f37
|
2022-11-15T12:57:07
|
|
Fixed release build using clang on Windows
|
|
98f93d0a
|
2022-11-15T11:39:06
|
|
Fixed building without xkbcommon support
|
|
615901db
|
2022-11-15T11:19:08
|
|
Removed unnecessary header
The xkbcommon-keysyms.h header isn't available on some older systems,
and we don't actually need it for this code.
|
|
c8551847
|
2022-11-04T12:41:46
|
|
wayland: Handle virtual keyboards that don't fit the X mapping
SDL is built around the concept of keyboards having a fixed layout with scancodes that correspond to physical keys no matter what linguistic layout is used. Virtual keyboards don't have this concept and can present an arbitrary layout of keys with arbitrary scancodes and names, which don't fit the SDL model. When one of these keyboards is encountered, it requires special handling: use the keysym of the pressed keys to derive their ANSI keyboard scancode equivalents for control keys and ASCII characters. All other characters are passed through as text events only.
|
|
d1858eb1
|
2022-11-04T12:33:45
|
|
events: Add a helper function to get the default keycode for a scancode
Add a helper function to get the keycode for a scancode from the default lookup table. Unlike SDL_GetKeyFromScancode(), this is not affected by the set keymap.
|
|
0e446c54
|
2022-11-04T12:27:36
|
|
events: Factor out the xkb keysym to scancode conversion from the X11 driver
|
|
44d7b8b9
|
2022-11-15T13:57:01
|
|
egl: Check for a NULL pointer in SDL_EGL_GetProcAddress.
This happens on kmsdrm if you try to GetProcAddress before creating
a window.
Fixes #5399.
|
|
f3cc99fb
|
2022-11-15T13:56:44
|
|
x11: Minor style fixes for recent OSK changes
|
|
e6c4db81
|
2022-11-15T19:22:42
|
|
The SDL2::SDL2 target in SDL2.framework needs to see the SDL2 include folder
SDL.h includes other files through SDL2/SDL_xxx.h
|
|
70656b13
|
2022-11-15T10:18:41
|
|
Don't recreate the window when creating a Metal renderer on an OpenGL window.
It turns out that we can safely create a Metal view on an existing window, and that avoids issues with the window being recreated with the wrong orientation in iOS 16.
Fixes https://github.com/libsdl-org/SDL/issues/6289
|
|
a71ad40a
|
2022-11-15T13:04:22
|
|
CMake: Add option to use Ccache.
|
|
5e61f245
|
2022-11-15T05:25:16
|
|
Sync SDL wiki -> header
|
|
80ff20f6
|
2022-11-14T23:56:20
|
|
N3DS: Set keyboard focus to newly created windows.
This fixes polling issues with Joystick subsystem where
`SDL_PrivateJoystickShouldIgnoreEvent` would always return true, thus
ignoring all inputs.
|
|
491d0bcc
|
2022-11-14T17:38:42
|
|
N3DS: Refactor N3DS_FileOpen.
|
|
dcfa127f
|
2022-11-14T17:34:22
|
|
N3DS: Document the SDL_GetBasePath behaviour.
|
|
de5fa89b
|
2022-11-14T16:56:51
|
|
N3DS: Prepend PrefPath with `sdmc:`.
|
|
7d536d52
|
2022-11-14T16:16:21
|
|
N3DS: Put `SDL_Log.txt` in the proper directory.
The homebrew "user" directory should be `/3ds/`.
To avoid ambiguity, `sdmc:` is specified.
|
|
bf4f9aaa
|
2022-11-14T16:11:58
|
|
N3DS: Use designated initialiser for drivers.
Just a sanity check that the functions are actually mapped correctly.
|
|
d080e3bf
|
2022-11-14T17:56:48
|
|
Silence `-Wmaybe-uninitialized` warnings in tests.
|
|
a40b7cde
|
2022-11-14T13:03:52
|
|
Workaround for views being in portrait instead of landscape mode on iOS 16
Fixes https://github.com/libsdl-org/SDL/issues/6289
|
|
9f784b18
|
2022-11-14T10:58:59
|
|
The iOS and tvOS demos link SDL statically, not as a framework
|
|
b886f4c6
|
2022-11-14T17:35:28
|
|
events: eliminate redundant code in SDL_SendEditingText
|
|
dad8df3e
|
2022-11-14T08:20:31
|
|
video: check graphics flags the same way in SDL_RecreateWindow as in SDL_CreateWindow
- single check to validate the graphics flags
- check it before tearing down the window
|
|
eef4d3c8
|
2022-11-13T16:56:04
|
|
wayland: Clamp wl_seat version on older versions of libwayland
Clamp the wl_seat max version to 5 if being built against a version of libwayland below 1.21.0, or containers that bundle newer versions of SDL with older versions of libwayland can break if the compositor advertises support for a protocol version above 5.
|
|
67498926
|
2022-11-13T11:09:20
|
|
Fixed warning
Fixes https://github.com/libsdl-org/SDL/issues/5842
|
|
1b0277da
|
2022-11-13T11:08:37
|
|
Move SDL_mslibc.c into the source file list
|
|
c4b9f621
|
2022-11-13T12:45:13
|
|
x11: Add support for the Steam Deck on-screen keyboard
|
|
5f2a1231
|
2022-11-13T08:00:03
|
|
video: check graphics flags the same way as the type flags
|
|
22354b41
|
2022-11-12T08:29:15
|
|
video: simplify window-type check in SDL_CreateWindow
|
|
85aa9b8b
|
2022-11-11T13:47:36
|
|
wasapi: Favor the system resampler again, for now.
Reference Issue #5538.
|
|
9f8b68a2
|
2022-11-11T10:24:17
|
|
Fixed building without linux/input.h
https://github.com/libsdl-org/SDL/issues/6169
|
|
b7e65a81
|
2022-11-11T08:57:07
|
|
Fixed incorrect WGI controller state when the application loses focus
Recenter the controller elements when WGI stops reporting valid state
Fixes https://github.com/libsdl-org/SDL/issues/5261
|
|
875e9b35
|
2022-10-26T15:19:28
|
|
N-Gage: additional cleanup
|
|
afbafc2a
|
2022-10-21T08:11:48
|
|
Remove redundant dependency to bitdraw.h, minor cleanup
|
|
d09edcbc
|
2022-11-11T12:10:27
|
|
video: sync Metal_CreateView with GL_CreateContext and Vulkan_CreateSurface
no need to check if _this->Metal_CreateView, since it is already checked in Re(create)Window
|
|
b71d9274
|
2022-11-11T12:09:15
|
|
video: add NOT_AN_OPENGL_WINDOW define (similar to NOT_A_VULKAN_WINDOW)
|
|
36c6ed4b
|
2022-11-11T08:33:55
|
|
video: add SDL_DllNotSupported
- add SDL_DllNotSupported and use it to sync the behavior of SDL_GL_LoadLibrary with SDL_Vulkan_LoadLibrary
|
|
dd44cacb
|
2022-11-11T12:51:30
|
|
remove duplicated SDL_hidapi_steam.c additions to watcom makefiles.
|
|
0dfc829a
|
2022-11-10T19:16:53
|
|
Added simple BLE Steam Controller support on all platforms
This is still disabled by default via the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM
|
|
f430ef5d
|
2022-11-10T17:27:48
|
|
Don't change the window position when creating it on iOS, it is already placed on the correct display
|
|
7c05ea0a
|
2022-11-10T13:35:40
|
|
Added mappings for the GameSir T3 and T4 Pro controllers
|
|
404cb276
|
2022-11-10T13:28:03
|
|
Added macOS mappings for the Nintendo Switch Pro Controller over Bluetooth
|
|
29cafa9c
|
2022-11-10T08:23:16
|
|
add SDL_ContextNotSupported and validate flags in SDL_RecreateWindow similar to SDL_CreateWindow
|
|
1008cc8e
|
2022-11-09T12:55:27
|
|
video: Add some braces to match SDL coding style.
|
|
ac3349fa
|
2022-11-09T09:11:04
|
|
solve FIXMEs in SDL_video.c
|
|
e5c599f8
|
2022-11-09T09:02:23
|
|
fix SOLARIS_ATOMICS
- use 'sizeless' int types (int uses 32-bit even if _LP64 is set)
|
|
b095df7f
|
2022-11-08T08:39:43
|
|
simplify MSC_ATOMICS
- use _Interlocked(Compare)ExchangePointer in case of _M_IX86 as well
- improve assertions:
1. add assertions to SDL_AtomicAdd/SDL_AtomicSet and SDL_AtomicCAS
2. use sizeof(a->value) instead of sizeof(int)
|
|
3dc88da0
|
2022-11-08T13:27:56
|
|
Fix Dualshock 4 rumble stopping too early
Dualshock 4 controller only rumbles for 5 seconds maximum. Resend
rumble command every 2 seconds to make long rumble work.
|
|
6432f45a
|
2022-11-08T10:27:21
|
|
Don't treat the Nintendo IMU as a separate game controller on Linux
|
|
2e3b4f3f
|
2022-11-08T07:50:51
|
|
Don't send rumble to the Amazon Luna controller on macOS
Sending rumble to the Amazon Luna controller on macOS gets there, but IOHIDDeviceSetReport() blocks for a long time and eventually fails.
This appears to be a bug in the macOS Bluetooth stack, ref rdar://99265496
|
|
02bc359b
|
2022-11-07T19:31:18
|
|
Shorten "Bensussen Deutsch & Associates,Inc.(BDA)" to "BDA" for controller names
|
|
b0dc6709
|
2022-11-07T14:26:48
|
|
coreaudio: Don't use deprecated kAudioObjectPropertyElementMaster symbol.
Fixes #6449.
|
|
db01016d
|
2022-11-07T21:15:30
|
|
revert replace AM_PATH_SDL2 usage with corresponding PKG_CHECK_MODULES.
Reference issue: https://github.com/libsdl-org/SDL/issues/6494 .
|
|
e873d609
|
2022-11-07T10:02:06
|
|
fix handling of SDL_EventQ.active
- SDL_EventQ.active is a bool variable -> do not use SDL_AtomicGet/Set, it does not help in any way
- protect SDL_EventQ.active with SDL_EventQ.lock
- set SDL_EventQ.active to FALSE by default
|
|
eb670742
|
2022-11-07T09:05:32
|
|
better SDL_AtomicGet(Ptr) implementation
|
|
64c93f78
|
2022-11-06T23:51:04
|
|
replace AM_PATH_SDL2 usage with corresponding PKG_CHECK_MODULES.
|
|
5dc93451
|
2022-11-06T20:49:37
|
|
JANITORIAL : Correct some more spelling mistakes (#6489)
|
|
c2675d74
|
2022-11-06T10:52:20
|
|
Revert "cocoa: Discard the IME Candidate Window immediately when Escape is pressed"
This reverts commit 0d76e2a8a1a8e6a2801123587c2205a288d49406, as it introduced other issues:
https://github.com/libsdl-org/SDL/pull/6486#issuecomment-1304684865
|
|
f2ce7c5f
|
2022-11-06T08:23:08
|
|
Added the G29 as a PlayStation controller
|
|
9d1dbd2a
|
2022-11-06T01:16:52
|
|
Added note about trigger rumble availability across third-party Xbox One controllers
|
|
e7a56323
|
2022-11-06T01:43:05
|
|
Make sure we wait after sending the rumble packet when initializing the PowerA Xbox One Mini Wired Controller
|
|
6875e62a
|
2022-11-06T01:15:20
|
|
Make sure we don't send Xbox controllers rumble so quickly that it overwhelms the firmware
Fixes https://github.com/libsdl-org/SDL/issues/6435
|
|
38af459d
|
2022-11-06T01:15:19
|
|
Fixed potential clobbering of packets of different types using SDL_HIDAPI_SendRumble()
|
|
e45cb5b1
|
2022-11-06T01:15:18
|
|
Fixed initializing the PowerA Xbox One Mini Wired Controller
|
|
0d76e2a8
|
2022-11-06T04:59:02
|
|
cocoa: Discard the IME Candidate Window immediately when Escape is pressed
|
|
15a98909
|
2022-11-05T16:44:52
|
|
Added SDL_HINT_HIDAPI_IGNORE_DEVICES to specify devices that should be ignored in SDL_hid_enumerate()
|
|
297ecb70
|
2022-11-05T15:58:30
|
|
Added SDL_strcasestr() for a case insensitive version of SDL_strstr()
|
|
a4626dea
|
2022-11-05T14:24:41
|
|
Fixed initializing the PDP Xbox One and Victrix Gambit controllers
|
|
7e11b09b
|
2022-11-05T13:50:37
|
|
The PowerA Xbox One Mini Wired Controller works with the HIDAPI driver now
|
|
a2d66b6a
|
2022-11-05T13:12:10
|
|
SDL_GameControllerMapping() should return the string for the actual mapping that was used when opening a gamecontroller, rather than do a GUID match again
Also don't match against the zero guid if that happens to be in the mapping list for some reason
|
|
f3bf543e
|
2022-11-05T15:21:29
|
|
recognize game controllers connected via raphnet technologies WUSBMote v2.2
This is a USB adapter for controllers shipped with Nintendo's NES-mini and
SNES-mini consoles.
Tested with both NES and SNES controllers, buttons map as expected on both.
|
|
24cdebe4
|
2022-11-05T10:34:08
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED to control the brightness of the Xbox button LED on the Xbox One controller
|
|
78f97108
|
2022-11-05T10:38:33
|
|
audio: Avoid accumulation errors in resampler.
Fixes #6391.
|
|
689218eb
|
2022-11-04T12:07:20
|
|
Fix wayland reconnection paths
Most of this code is disabled out for now.
- For mouse cursors we have a wl_surface for both system and custom
cursors which needs recreating.
- The other patch is about nullification after deletions
|
|
33a68f57
|
2022-11-03T16:02:58
|
|
Added Linux mappings for the Logitech G29 in PS3 and PS4 modes
|
|
c70e6759
|
2022-11-03T12:37:54
|
|
Wait a bit for devices to initialize before trying to enumerate and open them.
This works around udev event nodes arriving before hidraw nodes and the controller being opened twice - once using the Linux driver and once by the HIDAPI driver.
This also fixes a kernel panic on Steam Link hardware due to trying to open the hidraw device node too early.
A delay of 10 ms seems to be a good value, tested on Steam Link hardware.
|
|
084fa4c3
|
2022-11-01T10:55:17
|
|
cocoa: Reset IME when sending composed text
This will send an empty `TEXTEDITING` event that is used to signal the
end of the composition.
|
|
61297f70
|
2022-10-29T03:20:30
|
|
cmake: on Apple, check for presence of an OBJC compiler
|
|
04bcc910
|
2022-10-29T03:14:54
|
|
cmake: don't do enable_language(OBJC)
When SDL is included as a subproject, the following error might appear:
```
CMake Error: Error required internal CMake variable not set, cmake may not be built correctly.
Missing variable is:
CMAKE_OBJC_COMPILE_OBJECT
```
This is probably because the master project does not see certain OBJC related variables
|