kc3-lang/SDL/src

Branch :


Log

Author Commit Date CI Message
76295cec 2021-01-05 15:50:10 video/windows: ANSI/UNICODE updates (cf. bug 5435): - explicitly use UNICODE versions of DrawText, EnumDisplaySettings, EnumDisplayDevices, and CreateDC: the underlying structures have WCHAR strings. - change WIN_UpdateDisplayMode and WIN_GetDisplayMode() to accept LPCWSTR instead of LPCTSTR for the same reason. - change WIN_StringToUTF8 and WIN_UTF8ToString to the explicit 'W' versions where appropriate.
265a1cc9 2021-01-05 15:50:02 use WIN_StringToUTF8W instead of WIN_StringToUTF8 where needed (#2) cf. bug #5435. - SDL_wasapi_win32.c (GetWasapiDeviceName): pwszVal is WCHAR* - windows/SDL_sysfilesystem.c (SDL_GetBasePath, SDL_GetPrefPath) - windows/SDL_sysurl.c (SDL_SYS_OpenURL): wurl is WCHAR* - SDL_windowssensor.c (ConnectSensor): bstr_name is WCHAR* - windows/SDL_systhread.c (SDL_SYS_SetupThread): strw is WCHAR*
516042b4 2021-01-05 15:15:50 ran gendynapi.pl after SDL_UpdateNVTexture addition
31751bdc 2021-01-05 15:15:37 wmmsg.h: constified wmtab
b0325041 2021-01-05 12:36:34 Fix unused variable warning on METAL (see bug #5430)
c1eb9ecf 2021-01-05 12:29:43 Add SDL_UpdateNVTexture for META (bug #5430) (not tested)
73d93dbc 2021-01-05 12:20:02 Fix compilation on Window10 (see bug #5430)
df6b8131 2021-01-05 12:16:32 Fix compilation (implicit declaration of function) (see bug #5430)
d1f031c8 2021-01-05 12:08:16 Add SDL_UpdateNVTexture for d3d11 (bug #5430) (not tested)
f5eba2cc 2021-01-05 12:00:54 Fixed invalid read in yuv_rgb_sse() (see bug #5430)
be4cfd51 2021-01-05 11:56:22 Add SDL_UpdateNVTexture() to update NV12/21 Texture (bug #5430) for renderer software, opengl, and opengles2
d72dbd98 2021-01-04 17:30:28 Fixed detection of the Wooting Two keyboard, which shows up as an Xbox 360 controller
b2a0c712 2021-01-04 12:24:44 Allow setting the player index to -1, which turns off the player LED for PS5 controllers
bf754b52 2021-01-04 12:17:24 Valve contributed code is under the Zlib license
8cb421b2 2021-01-04 10:20:10 SDL_windows_main.c: use new WIN_StringToUTF8W macro
a594b850 2021-01-04 10:00:30 use WIN_StringToUTF8W macro instead of WIN_StringToUTF8, where needed: i.e. where the string is known guaranteed to be WCHAR*, in: - SDL_dinputjoystick.c (WIN_IsXInputDevice): VARIANT->var is BSTR (WCHAR*) - SDL_rawinputjoystick.c (RAWINPUT_AddDevice): string is WCHAR* - SDL_windows_gaming_input.c (IEventHandler_CRawGameControllerVtbl_InvokeAdded): string is WCHAR* There should be more of these..
5b14bbff 2021-01-04 10:00:10 make ANSI/UNICODE versions of WIN??UTF8 macros individually available.
f2bd861c 2021-01-04 08:50:00 move SDL_tcsstr definition to core/windows/SDL_windows.h
ae18109a 2021-01-04 01:23:50 SDL_windowsjoystick.c (SDL_CreateDeviceNotification): use L, not TEXT() cf. bug #5435.
390fd14f 2021-01-04 01:23:50 SDL_windowswindow.c (SDL_HelperWindowCreate): adjust for ANSI/UNICODE: change SDL_HelperWindowClassName and SDL_HelperWindowName from WCHAR * to be const TCHAR* cf. bug #5435.
398d2764 2021-01-04 01:23:50 RAWINPUT_InitWindowsGamingInput: change pNamespace from LPTSTR to PCWSTR because WindowsCreateStringReference specifically accepts const WCHAR * - WGI_JoystickInit(): ditto. cf. bug #5435.
f09e0af7 2021-01-04 01:23:50 SDL_dinputjoystick.c (IsXInputDevice): adjust to be ANSI/UNICODE-agnostic cf. bug #5435.
ed39f2f3 2021-01-04 01:23:50 SDL_wasapi_win32.c (WASAPI_PlatformThreadInit): use L instead of TEXT() because AvSetMmThreadCharacteristicsW specifically accepts WCHAR* input cf. bug #5435.
01a2f276 2021-01-04 01:23:50 consistently use TEXT() macro with LoadLibrary() and GetModuleHandle() cf. bug #5435.
393c8c1f 2021-01-03 10:32:55 Fixed bug 5440 - MacCatalyst build failures C.W. Betts I tested building commit http://hg.libsdl.org/SDL/rev/7adf3fdc19f3 on Mac Catalyst and found some issues: * MTLFeatureSet_iOS_* enums aren't available under Mac Catalyst. * OpenGL ES is unavailable under Mac Catalyst. * Some Metal features are available under Catalyst but not iOS, such as displaySyncEnabled. * Set Metal as the default renderer on Mac Catalyst Attaching a patch that will make SDL2 build for Mac Catalyst.
014f507c 2021-01-03 12:13:40 Use specific acquire and release variants of InterlockedExchange on ARM _InterlockedExchange_rel() is required for correctness on ARM because the _ReadWriteBarrier() macro is only a compiler memory barrier, not a hardware memory barrier. Due to ARM's relaxed memory model, this means the '*lock = 0' write may be observed before the operations inside the lock, causing possible corruption of data protected by the lock. _InterlockedExchange_acq() is more efficient on ARM because it avoids an expensive full memory barrier that _InterlockedExchange() does.
fea49a3e 2021-01-03 15:24:47 SDL_stretch.c: compilation NEON on Windows 10
acccc71f 2021-01-02 22:31:44 Fixed bug 5436 - MSVC 2019 ARM64 build fails to compile SDL_stretch.c
6cbd4417 2021-01-02 14:45:15 Add a hint for D3D9Ex to avoid having to choose at compile-time
59594a78 2021-01-02 13:43:04 Implement PAUSE_INSTRUCTION() for Windows ARM platforms
9130f7c3 2021-01-02 10:25:38 Updated copyright for 2021
963c9495 2021-01-02 10:11:08 Fixed bug 5431 - SDL_Metal_GetDrawableSize is inaccurate for high dpi displays if a Metal view has not already been created Caleb Cornett For a window created with SDL_WINDOW_ALLOW_HIGHDPI, SDL_GL_GetDrawableSize will return the high-dpi drawable size even before any GL context creation happens. But SDL_Metal_GetDrawableSize will return the size of the window if the Metal view has not been created. This is confusing and inconsistent behavior. An easy way to test this is to build testgl2 and testvulkan on macOS with the SDL_WINDOW_ALLOW_HIGHDPI flag enabled during window creation. The GL2 program will report a drawable size of 2x window width and 2x window height, while the Vulkan program will report the window size. This patch addresses the issue by falling back to using the content view dimensions if no Metal view exists in the window. (The code for this was taken directly from Cocoa_GL_GetDrawableSize.) With this change, the testvulkan behavior matches that of testgl2. Note that I haven't tested for this issue on UIKit. It's possible a similar change will need to be made there too.
d25eff65 2021-01-02 10:06:22 Fixed bug 5429 - spinlock implements PAUSE_INSTRUCTION for PPC platforms David Carlier This form of 'or' provides a hint that performance will probably be improved if shared resources dedicated to the executing processor are released for use by other processors
f0b6c787 2021-01-02 09:58:08 Fixed Windows XP compatibility with recent hidapi commit
3edf337d 2021-01-02 17:29:34 Simplify RenderGetViewportSize
2af765da 2021-01-02 17:18:13 SDL_RenderGetViewportF: only need the size of viewport (see bug #5424)
41597249 2021-01-02 16:15:22 SDL_RenderGetViewportF: remove debug messages
8c48c423 2021-01-02 16:12:30 Add SDL_RenderGetViewportF: fix lost of precision while scaling (see bug #5424)
c005267f 2021-01-02 09:38:19 SDL_BlitScaled: better and safer fix clipping bug #2687 And re-use SDL_round(), since it's been re-added (remove in https://hg.libsdl.org/SDL/rev/34043108b7e4 )
2127ed25 2021-01-02 09:28:16 SDL_SoftStretch: add a check for input pixel format and function re-naming
414ddc32 2021-01-01 17:34:07 Do not wait in GetOverlappedResult() in hid_read_timeout() This is unsafe because the event is auto-reset, therefore the call to WaitForSingleObject() resets the event which GetOverlappedResult() will try to wait on. Even though the overlapped operation is guaranteed to be completed at the point we call GetOverlappedResult(), it will still wait on the event handle for a short time to trigger the reset for auto-reset events. This amounts to roughly a 100 ms sleep each time GetOverlappedResult() is called for a completed I/O with a non-signalled event. In the context of HIDAPI, this extra sleep means that callers that loop on hid_read_timeout() with timeout=0 will loop forever, since the 100 ms sleep each iteration ensures ReadFile() will always have new data.
ab55ec48 2021-01-01 11:12:41 Fix use-after-free SBH corruption due to overlapped ReadFile in hidapi not being canceled for all threads before device close - hidapi already called CancelIo on hid_close but that only cancels pending IO for the current thread. Controller read/writes originate from multiple threads (serialized, but on a different thread nonetheless) but device destruction was always done on the main device thread which left any pending overlapped reads still running after hidapi's internal read buffer is deallocated leading to intermittent free list corruption.
480c1f9f 2021-01-01 11:12:36 Make sure we're not starving report reads when there's lots of rumble
223af86c 2021-01-01 11:12:30 Added SDL_RenderGetD3D11Device() to get access to the device associated with the D3D11 renderer
5f0b2a7f 2021-01-01 11:12:22 Fixed resource leak with D3D11 NV12 textures
21003b7d 2020-12-31 14:31:29 [KMS/DRM] Small refactoring on the SwapWindow function.
e1fb969b 2020-12-31 01:40:15 [KMS/DRM] Correct comments about last bugfix.
e34caa97 2020-12-31 01:31:57 [KMS/DRM] Correct EGL/GL library loading on window creation, thus saving window re-creation.
d81fe923 2020-12-30 22:03:32 SDL_BlitScaled: remove un needed -1 +1 offset in calculation
8476df3e 2020-12-30 23:55:10 SDL_mixer.c: remove calls to non-existing m68k asm code.
590a5469 2020-12-30 16:12:14 Fixed bug 5424 - Renderer doesn't use entirely the viewport when scaling is used Viewport/Clip dimensions are calculated usingg SDL_ceil whereas all renders use SDL_floor
8a32ee24 2020-12-30 01:00:24 removed MSVC strtok_s use from SDL_strtokr(). no other ??_s are used elsewhere in SDL_stdinc. besides, C11 has a strtok_s with a different signature.
0684572c 2020-12-29 12:13:10 Added a hint to control whether the player LEDs should be lit to indicate which player is associated with a PS5 controller.
80cf8a8b 2020-12-29 17:29:31 SDL_BlitScaled: also prevent crash if dest width or height is negative
f08b9a5b 2020-12-29 16:02:52 SDL_BlitScaled: prevent crash if dest width or height is 0
427c96ec 2020-12-29 14:24:38 [KMS/DRM] Rework some functions.
67f0b9b8 2020-12-28 20:58:47 Fixed bug 5418 - Add system features detection for Elbrus (E2K) Ivan Kuzmenko MCST Elbrus 2000 (E2K, https://en.wikipedia.org/wiki/Elbrus_2000) is a russian processor architecture based on VLIW/EPIC instruction set (like Intel Itanium (IA-64) architecture). Architecture has half native / half software support of most Intel/AMD SIMD (e.g. MMX/SSE/SSE2/SSE3/SSSE3/SSE4.1/SSE4.2/AES/AVX/AVX2 & 3DNow!/SSE4a/XOP/FMA4). It also has built-in x86/x86_64 <-> e2k binary translators (RTC, http://www.mcst.ru/rtc and Lintel, http://www.mcst.ru/lintel) that can run code for x86/x86_64 architecture (Transmeta did something similiar with their Crusoe series) with SIMD extensions support. Attached patch allows SDL2 to detect extensions supported by E2K like MMX, 3dNOW!, AVX etc. (test/testplatform log: https://termbin.com/7qs3).
3cb0e840 2020-12-28 11:47:53 Fixed bug 5422 - KMSDRM_LEGACY: Add OpenBSD support wahil1976 This patch adds support for OpenBSD to KMSDRM_LEGACY. Note that the patch won't be ported to the atomic KMSDRM backend because OpenBSD does not support atomic KMS properly yet.
8fc0baad 2020-12-28 11:43:11 Add SDL_cond implementation using Windows Condition Variables Is automatically used when the SRW SDL_mutex implementation is active. Otherwise falls back to the generic implementation. v2: - Rebase onto master fa3ea1051a4b
2443e51e 2020-12-28 11:42:49 Add optional suffix `_generic` to generic SDL_cond impl Allows for runtime selectable implementation
7539ac80 2020-12-28 18:22:07 [KMS/DRM] Restore hacky code to point to TTY buffer on surface destruction b/c I lack alternatives.
5dabc4d7 2020-12-28 18:17:25 Revert changeset 14590 544ac819e8b3 , does not fully fix
9efdafd4 2020-12-28 18:07:03 SDL_RenderCopy: scale before doing intersection this prevents drawing 1 pixel outside the screen, in letterbox mode
86b81abe 2020-12-28 16:19:19 [KMS/DRM_LEGACY] Prevent mouse cursor from staying onscreen after window destruction. Patch by Ozkan Sezer.
0feaf7d1 2020-12-28 14:37:58 [KMS/DRM][Vulkan] Correct non-existing property. Remove hacky surface destruction code (TTY buffer isn't there after a Vulkan window is created).
7186584b 2020-12-28 10:41:37 fix indentation (bug 5313)
c2735c0b 2020-12-27 23:53:28 Better scaling fallbacks for the SW renderer (bug 5313)
a6beb2d2 2020-12-28 01:10:02 SDL_PrivateLowerBlitScaled: remove unused local var 'a'
30df2e4e 2020-12-27 23:00:11 Scaling fallbacks for the SW renderer (bug 5313)
040bd7a9 2020-12-28 00:55:28 Fix udev not detecting ID_INPUT_KEY devices when udev is not running https://bugzilla.libsdl.org/show_bug.cgi?id=5308 The udev code labels devices that are found by this code with ID_INPUT_KEY which in turn gets used by SDL to label the devices as SDL_UDEV_DEVICE_KEYBOARD. This was missing for the code path when udev is not running and as such devices such as the power button of a phone was not detected as keyboard input and no devices were emitted.
f9b5f6cc 2020-12-27 20:28:24 Forward scale mode to SW renderer (Bug 5313)
46d31d57 2020-12-27 00:43:06 [KMS/DRM][Vulkan] Fix segfault when changing fullscren mode and permanent cursor when changing between Vulkan and GL renderers in vkQuake3. Tidy up window destruction code.
e7c47941 2020-12-25 17:10:02 Disable WaitOnAddress SDL_sem implementation on Windows Phone Apps that use the required APIs do not pass certification.
d6afc1c6 2020-12-25 04:00:20 thread/windows: Statically link synchronization APIs on WINRT GetModuleHandleW is not available on those platforms --- .../WinPhone81_VS2013/SDL-WinPhone81.vcxproj | 8 ++++---- VisualC-WinRT/WinRT81_VS2013/SDL-WinRT81.vcxproj | 12 ++++++------ src/thread/windows/SDL_sysmutex.c | 12 ++++++++++++ src/thread/windows/SDL_syssem.c | 11 +++++++++++ 4 files changed, 33 insertions(+), 10 deletions(-)
ff913a22 2020-12-23 16:16:55 Fixed compile warnings on platforms without hidapi support
047b20e3 2020-12-23 16:11:16 Fixed compile warnings on platforms without hidapi support
9838611a 2020-12-23 15:52:12 Fixed compiler crash building for iOS with clang 11.0.3
4aebad77 2020-12-23 22:50:50 SDL_SoftStretchLowerLinear: try to make xcode buildbot compile (Bug 5313)
93ccdee8 2020-12-23 13:47:49 Fixed bug 5404 - stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf Cameron Cawley stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf The default implementation is based on the one used in the Windows RT video driver.
d0b8295c 2020-12-23 13:36:46 Add SDL_sem implementation using Atomics and WaitOnAddress API. Keep Semaphore Kernel Object impl for Windows 7 and older - choose at runtime v2: - Fix mixed int/LONG types - Reorder definitions - Add missing include v3: - Use `GetModuleHandle()` to load the API Set
548cb908 2020-12-23 13:33:36 Add SDL_mutex implementation using Windows Slim Reader/Writer Locks Keep Critical Section impl for Windows XP/Vista - choose at runtime v2: - Add SRW definitions as suggested by Ozkan Sezer Allows building against older platform headers. - Rename "hidden" function parameter `mutex_` to `_mutex` v3: - Use GetModuleHandle instead of LoadLibrary - Fix typo in comment
8e20376f 2020-12-23 22:09:01 SDL_SoftStretchLinear: use SDL_INLINE (bug 5313)
7b8d5b7d 2020-12-23 22:02:28 SDL_SoftStretchLinear: fix implicit conversion (bug 5313)
15fea339 2020-12-23 23:47:10 ran gendynapi.pl after addition of SDL_SoftStretchLinear
ae8a270f 2020-12-23 21:37:40 Add SDL_SoftStretchLowerLinear() (Bug 5313)
050ee9a4 2020-12-23 21:32:01 Split SDL_SoftStretch in Lower and Uppler functions (Bug 5313)
09fcc9ed 2020-12-23 16:45:23 [KMS/DRM][Vulkan] Fix small warning, thanks to Ozkan Sezer for spotting it.
a6dc838d 2020-12-23 16:22:46 [KMS/DRM][Vulkan] Only try to create a display mode when no suitable mode is found.
0ed4d929 2020-12-23 04:53:23 Fixed setting player LEDs for PS5 controllers over Bluetooth
6341bb35 2020-12-22 21:51:59 Fixed controller disconnect detection for PS4 and PS5 controllers over Bluetooth
a30adae5 2020-12-22 20:58:32 Make it possible to turn on PS4 rumble effects at runtime using the hint
c93947a2 2020-12-22 20:12:03 Make it possible to turn on PS5 rumble effects at runtime using the hint
058a0ab4 2020-12-22 14:38:32 Set the pad lights on the PS5 controller corresponding to the player index Also allow setting the player index from testgamecontroller using the number keys
6a57072e 2020-12-22 14:10:08 Only add the touchpad and sensors to the PS5 controller if effects are enabled
4ec776c3 2020-12-22 13:29:23 Don't switch the PS5 controller out of DirectInput mode by default
350f1b0d 2020-12-22 10:36:15 Updated SDL to version 2.0.15 for development
a19c008a 2020-12-22 17:10:02 use GetModuleHandleW() to retrieve kernel32.dll handle (bug #5390.) SDL_systhread.c and SDL_syslocale.c used to call LoadLibrary() without calling FreeLibrary() later. GetModuleHandleW() should always succeed because GetModuleHandleW() itself is imported from kernel32.dll and we don't need to bother releasing it.
2fc987c2 2020-12-22 14:15:33 [Buildsystem] Add guards for not building with KMSDRM support if EGL is not available.
4cd98160 2020-12-21 09:44:25 Fixed whitespace
8766d604 2020-12-21 17:29:24 [Video/KMSDRM] Fix potetial access to freed structure and complete errorchecks.