src


Log

Author Commit Date CI Message
Sam Lantinga 113801b7 2018-06-05T12:46:13 Added SDL_IsChromebook() to determine if we're running on a Chromebook.
Sam Lantinga 2dedbc72 2018-06-05T12:46:11 Add Android support for relative mouse mode to SDL.
Sam Lantinga 9d6ac3de 2018-06-05T12:46:09 Fix creating a minimized window in SDL to not cause focus to be stolen (because ShowWindow( hwnd, SW_MINIMIZE ) would be called after creation, thus changing focus to the prior window based on some per-app list in windows, rather than the window being created with WS_MINIMIZED to start with). This means we have to consider SDL_WINDOW_MINIMIZED a window creation flag, but on non-windows platforms we just remove it and let the normal FinishWindowCreation re-apply and do the minimize as I have no idea what is right on them or if anything should change. CR: Phil
Sam Lantinga 1d25135b 2018-06-01T19:43:53 Fixed bug 4184 - jack audio driver fails in presence of midi ports Martin ?irokov Launching an SDL application with SDL_AUDIODRIVER=jack, and then calling SDL_OpenAudioDevice() with whatever parameters fails with an error like this one: SDL_OpenAudioDevice: Couldn't connect JACK ports: SDL:sdl_jack_output_0 => system:midi_playback_1 This happens because JACK_OpenDevice in src/audio/jack/SDL_jackaudio.c blindly tries to connect to all input ports without checking whether they are for audio or midi. The fix is to check port types and ignore all non audio ports. Also I removed devports field from struct SDL_PrivateAudioData, because it's never really used and removing unused ports from it would be PITA.
Sam Lantinga ff6aebc4 2018-05-29T08:03:44 Added a new GUID for DS3 controller connected over bluetooth, for both Sony and Shanwan (thanks William!)
Ryan C. Gordon 3d387098 2018-05-27T20:30:03 metal: contrary to documentation, we need to set the drawableSize explicitly. Fixes Bugzilla #4149.
Sam Lantinga 8325df25 2018-05-24T07:30:24 Fixed bug 4169 - Crash due to audio session observer race condition Jona The following explains why this bug was happening: This crash was caused because the audio session was being set as active [session setActive:YES error:&err] when the audio device was actually being CLOSED. Certain cases the audio session being set to active would fail and the method would return right away. Because of the way the error was handled we never removed the SDLInterruptionListener thus leaking it. Later when an interruption was received the THIS_ object would contain a pointer to an already released device causing the crash. The fix: When only one device remained open and it was being closed we needed to set the audio session as NOT active and completely ignore the returned error to successfully release the SDLInterruptionListener. I think the user assumed that the open_playback_devices and open_capture_devices would equal 0 when all of them where closed but the truth is that at the end of the closing process that the open devices count is decremented.
Sam Lantinga b3173d9d 2018-05-23T17:15:37 Added support for the NVIDIA SHIELD handheld gaming device
Sam Lantinga 361043a5 2018-05-23T17:15:33 Actually left trigger is motion axis 17 and right trigger is motion axis 18, which will map in that order to SDL axes.
Sam Lantinga 4d9a3469 2018-05-23T16:00:21 Added additional supported Android controllers
Sam Lantinga c07656db 2018-05-23T16:00:19 Fixed default mapping for Android controller triggers (they were reversed)
Ryan C. Gordon 101544d6 2018-05-21T12:05:17 audio: Needed to fix two more instances for Visual Studio.
Ryan C. Gordon 0ad4b0b6 2018-05-21T12:00:21 thread: fixed compiler warnings on non-Linux systems that use pthread. (static function rtkit_setpriority was unused, moved it in with rest of __LINUX__ section.)
Ryan C. Gordon 49881861 2018-05-21T11:54:09 audio: Patched to compile on Visual Studio. (It gets upset at the -2147483648, thinking this should be an unsigned value because 2147483648 is too large for an int32, so the negative sign upsets the compiler.)
Ryan C. Gordon 4df859c5 2018-05-21T11:35:42 cpuinfo: Added SDL_HasAVX512F(). This checks for the "foundation" AVX-512 instructions (that all AVX-512 compatible CPUs support).
Ryan C. Gordon 8543ad7d 2018-05-21T11:34:57 cpuinfo: Added some internal SIMD-aligned allocation functions. Fixes Bugzilla #4150 (sort of).
Sam Lantinga 999af809 2018-05-18T13:09:30 Merged latest changes from Steam Link app
Ryan C. Gordon e2619f1d 2018-05-17T12:50:46 dynapi: don't let system loader resolve the initializer to the wrong version. Fixes problems launching Firewatch on Linux (which statically links SDL but also dynamically loads a system-wide copy from a plugin shared library) with a newer SDL build.
Ryan C. Gordon b7e88aaa 2018-05-16T02:03:06 audio: Added ARM NEON versions of audio converters. These are _much_ faster than the scalar equivalents on the Raspberry Pi that I tested on. Often 3x to 4x as fast!
Ryan C. Gordon cb0e614f 2018-05-15T02:29:35 audio: SSE2 float-to-int converters should clamp input. The scalar versions already do this.
Ryan C. Gordon a07e5815 2018-05-15T01:40:05 audio: Fix range on float-to-int data clamping. I can't tell if there was a good reason for this or it was just me getting numbers wrong due to exhaustion.
Ryan C. Gordon 7832cb65 2018-05-15T01:35:53 audio: float to int converters should clamp inclusively. If we have to test if a sample is > 1.0f anyhow, we might as well use this to avoid the unnecessary multiplication when it's == 1.0f, too. (etc).
Ryan C. Gordon e2ec1eb1 2018-05-15T01:04:11 audio: converting int32 to/from float shouldn't use doubles. The concern is that a massive int sample, like 0x7FFFFFFF, won't fit in a float32, which doesn't have enough bits to hold a whole number this large, just to divide it to get a value between 0 and 1. Previously we would convert to double, to get more bits, do the division, and cast back to a float, but this is expensive. Casting to double is more accurate, but it's 2x to 3x slower. Shifting out the least significant byte of an int32, so it'll definitely fit in a float, and dividing by 0x7FFFFF is still accurate to about 5 decimal places, and the difference doesn't appear to be perceptable.
Ryan C. Gordon 4718791f 2018-05-14T00:03:39 cpuinfo: Make CPU flags easier to read and add to.
Ozkan Sezer 652d59fb 2018-05-10T09:02:39 make sure SDL_vsnprintf() nul terminates if it is using _vsnprintf The change makes sure that SDL_vsnprintf() nul terminates if it is using _vsnprintf() for the job. I made this patch for Watcom, whose _vsnprintf() doesn't guarantee nul termination. The preprocessor check can be extended to windows in general too, if required. Closes bug #3769.
Ozkan Sezer fe032ff4 2018-05-10T08:25:23 do the direct3d tap dance for overscan hint only if SDL_VIDEO_RENDER_D3D == 1
Sam Lantinga a4d0571e 2018-05-07T20:10:12 Reverted change for bug 4152 - restrict the win10 mouse bug workaround to win10 v1709 only Daniel Gibson Sorry, but it seems like Microsoft didn't fix the issue properly. I just updated my Win10 machine, it now is Version 1803, Build 17134.1 I tested with SDL2 2.0.7 (my workaround was released with 2.0.8) and still got lots of events that directly undid the prior "real" events - just like before. (See simple testcase in attachement) By default it sets SDL_HINT_MOUSE_RELATIVE_MODE_WARP - which triggered (and on my machine still triggers) the buggy behavior. You can start it with -raw, then it'll not set that hint and the events will be as expected. The easiest way to see the difference is looking at the window title, which shows accumulated X and Y values: If you just move your mouse to the right, in -raw mode the number just increases. In non-raw mode (using mouse warping) it stays around 0. I also had a WinAPI-only testcase: https://gist.github.com/DanielGibson/b5b033c67b9137f0280af9fc53352c68 It just calls SetCursorPos(320,240); on each WM_MOUSEMOVE event, and it also logs all those events to a mouseevents.log textfile. This log indeed looks a bit different since the latest Win10 update: It seems like all those events with x=320 y=240 do arrive - but only after I stopped moving the mouse - even though the cursor seems to be moved back every frame (or so). So moving the mouse to the right gives X coordinates like 330, 325, 333, 340, 330, ... and then when stopping movement I get lots of events with X coordinate 320
Sam Lantinga eb14b635 2018-05-07T19:52:25 Fixed bug 4134 - Render targets lose scale quality after minimizing a fullscreen window Olli-Samuli Lehmus If one creates a window with the SDL_WINDOW_FULLSCREEN_DESKTOP flag, and creates a render target with SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "linear"), and afterwards sets SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "nearest"), after minimizing the window, the scale quality hint is lost on the render target. Textures however do keep their interpolation modes.
Sam Lantinga 606c5a58 2018-05-05T10:27:53 Fixed bug 4152 - Windows 10 v1803 update seems to have fixed the jumping mouse bug (see bug #3931.)
Sam Lantinga 386790ef 2018-04-23T22:29:14 Improved error messages when Vulkan isn't configured (thanks Daniel Gibson!)
Sam Lantinga 8f780e76 2018-04-23T22:17:56 Fixed build
Sam Lantinga f521b22e 2018-04-23T22:07:56 Added SDL_THREAD_PRIORITY_TIME_CRITICAL
Sam Lantinga a1b8fa60 2018-04-23T21:50:03 TryLockMutex: Fix error handling for TryLockMutex Christian Herzig pthread_mutex_trylock() and by the way, pthread_mutex_lock() do not set errno. Pthread-methods directly return error code as int. See related man-pages for details.
Sam Lantinga a9ae1b50 2018-04-23T20:24:12 Handle NULL return from SDL_DBus_GetContext()
Sam Lantinga b5d231ee 2018-04-23T19:20:12 Handle NULL return from SDL_DBus_GetContext()
Sam Lantinga 43231256 2018-04-23T19:18:52 Added SDL_LinuxSetThreadPriority() to directly set the priority of a Linux thread (tid) This function tries using RealtimeKit connecting over DBUS as needed.
Sam Lantinga 816a6e68 2018-04-23T17:10:36 Added support for adjusting thread priorities using Linux RealtimeKit Michael Sartain This is a quick pass at adding Linux RealtimeKit thread priority support to SDL. It allows me to bump the thread priority to high without root privileges or setting any caps, etc. rtkit readme here: http://git.0pointer.net/rtkit.git/tree/README
Ryan C. Gordon dc8b55e5 2018-04-16T02:11:09 coreaudio: Use the standard SDL audio thread instead of spinning a new one. Fixes corner cases, like the audio callback not firing if the device is disconnected, etc.
Ryan C. Gordon 2df59062 2018-04-15T17:42:09 wayland: zxdg_shell_v6 needs a configure event before using a surface at all. Fixes Bugzilla #4109. Fixes Bugzilla #4119.
Sam Lantinga b7228bc5 2018-04-11T18:28:03 Added support for the GameSir G3w
Sam Lantinga 6a0ef0cd 2018-04-09T10:37:31 SDL: On Windows, have SDL_ShowWindow() not activate the window if the window has the WS_EX_NOACTIVATE window flag.
Sam Lantinga 4d78a995 2018-03-26T12:38:29 Fixed bug where an SDL window that was activated while hidden could never be shown. Test code: { SDL_Window *win = SDL_CreateWindow( "Dummy", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 128, 128, SDL_WINDOW_HIDDEN ); SDL_SysWMinfo info; SDL_VERSION( &info.version ); SDL_GetWindowWMInfo( win, &info ); SetActiveWindow( info.info.win.window ); { DWORD then = SDL_GetTicks(); while ( ( SDL_GetTicks() - then ) < 3000 ) { SDL_Event evt; SDL_PollEvent( &evt ); } SDL_ShowWindow( win ); then = SDL_GetTicks(); while ( ( SDL_GetTicks() - then ) < 3000 ) { SDL_Event evt; SDL_PollEvent( &evt ); } } SDL_DestroyWindow( win ); }
Sam Lantinga e14278ef 2018-03-24T10:26:40 Fixed bug 3804 - Message box on Windows truncates button ID Simon Hug I just wanted to fix a simple compiler warning in SDL_ShowMessageBox on Windows (which Sam fixed recently) and ended up finding some issues. Attached patch fixes these issues: - Because Windows only reports the lower 16 bits of the control identifier that was pushed, the button IDs used by SDL (C type int, most likely 32 bits) can get cut off. - The documentation states (somewhat ambiguously) that the button ID will be -1 if the dialog was closed, but the current code sets 0. For SDL 2.1, I think this should be a return code of SDL_ShowMessageBox itself. That will free up the button ID and it seems a more appropriate place for signaling this event. - Ampersands in controls will create mnemonics on Windows (underlined letters that, if combined with the Alt key, will push the button). I was thinking of adding a hint or flag to let the users enable it, but that might have unexpected results. - When the size of the text gets calculated, it doesn't use the same parameters as the static control. This can cut off text or wrap it weirdly. - On Windows, the Tab key is used to switch between control groups and sometimes between buttons in dialogs. This didn't seem to work correctly. Attached patch also adds: - Icons. Just the system ones that can be loaded with the ordinals IDI_ERROR, IDI_WARNING and IDI_INFORMATION. - A button limit of 2^16 - 101. - Some more specific error messages, but they never reach the user because how SDL_ShowMessageBox handles them if an implementation returns with an error.
Sam Lantinga b41b9d34 2018-03-19T14:52:53 Fixed return value
Sam Lantinga 8e062f69 2018-03-19T14:42:51 Generalized the handling of instantaneous guide button presses so there's a minimum of 100 ms between guide button press and release. This happens with at least the following controllers: All Apple MFI controllers, ASUS Gamepad, XiaoMi Bluetooth Controller
Sam Lantinga d529b001 2018-03-19T13:16:11 Added mapping for the ASUS Gamepad removing the guide button, which doesn't generate events even though it's reported in the Android APIs.
Sam Lantinga f536fbea 2018-03-16T11:08:53 Reimplemented Android cursor API support using reflection so it builds with older SDKs
Sam Lantinga e20d4173 2018-03-15T18:22:48 Added Android custom cursor implementation This is commented out in SDLActivity.java, with the note #CURSORIMPLEENTATION because it requires API 24, which is higher than the minimum required SDK
Sam Lantinga d401a77e 2018-03-10T21:22:42 Fixed bug 4102 - define _WIN32_WINNT_WIN7 if not already defined Ozkan Sezer The following patch defines _WIN32_WINNT_WIN7 if it is not already defined in core/windows/SDL_windows.c, similar to what is already there for _WIN32_WINNT_VISTA.
Sam Lantinga cc7b2fc5 2018-03-10T21:13:50 Temporary fix for bug 3432 - macOS 10.12: small scrolls (1 wheel notch) don't generate events Eric Wasylishen This bug was reintroduced by https://hg.libsdl.org/SDL/rev/fcf24b38a28a The steps to reproduce are the same: run the "testrelative" SDL demo with "--info all", connect a USB mouse with a scroll wheel, and roll the scroll wheel one "notch". You'll get log output like: testdraw2[1644:67222] INFO: SDL EVENT: Mouse: wheel scrolled 0 in x and 0 in y (reversed: 1) in window 1 As far as I can tell macOS doesn't have an API for getting the number of "wheel notches"; I get a deltaY of 0.100006 for one "notch", and it's heavily accelerated (if you roll the wheel quickly you'll get large deltas). So NSEvent's deltaY is only meant to be used for scrolling a scroll view, with the given distance in points, not something like selecting an item in a game. Here's a temporary patch that at restores the foor/ceil in Cocoa_HandleMouseWheel. Not ideal, but at least it restores the ability to scroll one notch of a mousewheel.
Sam Lantinga 129431b4 2018-03-08T16:32:22 Delay delivery of the pause button release on MFI controllers so it doesn't happen in the same frame as the button press
Sam Lantinga 92847022 2018-03-07T18:10:01 Added a mapping for the latest firmware for the Xbox One S controller on Android
Sam Lantinga a2c1d83c 2018-03-07T18:09:58 Include a USB VID/PID for Apple MFI controllers This is just placeholder VID/PID, but allows code that works with VID/PID to identify the MFI controllers easily.
Sam Lantinga a8ac5885 2018-03-07T13:30:40 Added SDL_GameControllerMappingForDeviceIndex() to get the mapping for a controller before it's opened
Sam Lantinga 9e651b69 2018-03-06T14:51:50 Try to dynamically create a default Android game controller mapping based on the buttons and axes on the controller. Include the controller USB VID/PID in the GUID where possible, as we do on other platforms.
Sam Lantinga 2419d267 2018-03-02T22:53:25 Progress fixing bug 4100 - errors and warnings after changeset 11917 Ozkan Sezer 2018-03-02 20:02:37 UTC http://hg.libsdl.org/SDL/rev/d702b0c54e52 resulted in an error and two warnings when compiled with mingw. 1. Error from SDL_windowstaskdialog.h: In file included from src/video/windows/SDL_windowsmessagebox.c:29:0: src/video/windows/SDL_windowstaskdialog.h:23:54: error: expected ')' before 'HWND' This is fixed by removing unnecessary annotations: 2. Warning from SDL_assert.c: src/SDL_assert.c: In function 'SDL_ExitProcess': src/SDL_assert.c:138:1: warning: 'noreturn' function does return Indeed ExitProcess() is prototyped with DECLSPEC_NORETURN, but TerminateProcess() is not. This can be rectified by adding an exit() call in there. Do NOTE, however, that requires building with a libc: 3. Warning from SDL_windowsmessagebox.c: src/video/windows/SDL_windowsmessagebox.c: In function 'WIN_ShowMessageBox': src/video/windows/SDL_windowsmessagebox.c:513:9: warning: 'nCancelButton' may be used uninitialized in this function My lazy solution was manually initializing nCancelButton to 0.
Sam Lantinga ac2d1f67 2018-03-02T12:08:18 Fixed setting the layer drawable size Without this change the drawable had a size of 0 and the metal renderer asserted because the projection matrix wasn't set.
Ryan C. Gordon cef1c1c2 2018-03-02T14:10:25 windows: Restore patches for Task Dialogs and TerminateProcess(). 2.0.8 has shipped, these can live in revision control now!
Sam Lantinga 003c0dce 2018-03-02T10:56:21 Use the real controller name for game controllers on iOS and Apple TV
Ryan C. Gordon 3537c3e7 2018-02-28T10:39:41 Back out Task Dialog and TerminateProcess patches for 2.0.8. These can return to revision control once we ship.
Ryan C. Gordon 6a1cfcce 2018-02-28T02:14:15 windows: dos2unix'd messagebox code, and (hopefully) fixed on MingW.
Ryan C. Gordon a749035f 2018-02-28T01:54:22 windows: Message boxes use Task Dialogs if possible (thanks, Jack!). This lets the message box have an icon. Unless the app has opted-in to using the v6 common controls, though, this will fall back to the usual SDL message boxes.
Ryan C. Gordon 8536130a 2018-02-28T01:23:49 assert: Use TerminateProcess() on Windows, vs ExitProcess (thanks, Jack!). "What I have done is use TerminateProcess rather than ExitProcess. ExitProcess will cause Microsoft's leak detection to continue, TerminateProcess won't. It is also technically wrong to use ExitProcess in the case of aborting the application. Jack Powell Twitter @jack9267"
Mark Callow be6ca785 2018-02-25T23:02:09 Support official Vulkan SDK for macOS. This tries to load vulkan.framework or libvulkan.1.dylib before MoltenVK.framework or libMoltenVK.dylib. In the previous version, layers would not work for applications run-time loading the default library.
Sam Lantinga f9f45d0b 2018-02-25T19:51:34 Fixed bug 4097 - Segmentation fault by SDL_CreateThreadWithStackSize Dongsun Kim Normal case 1. [thread 1] SDL_CreateThreadWithStackSize calls SDL_SYS_CreateThread. 2. [thread 1] If successful, it calls SDL_SemWait. 3. [thread 2] SDL_RunThread calls SDL_SYS_SetupThread, SDL_ThreadID, SDL_SemPost. 4. [thread 1] SDL_CreateThreadWithStackSize calls SDL_DestroySemaphore, SDL_free. Crash case (Segmentation fault) 1. [thread 1] SDL_CreateThreadWithStackSize calls SDL_SYS_CreateThread. 2. [thread 1] If successful, it calls SDL_SemWait. --> Error return due to SIGNAL(SYSTEM or Real Time) at sem_wait(pthread). 3. [thread 1] SDL_CreateThreadWithStackSize calls SDL_DestroySemaphore, SDL_free. 4. [thread 2] SDL_RunThread calls SDL_SYS_SetupThread, SDL_ThreadID, SDL_SemPost. --> Segmentation fault at strlen or sem_post.
Ozkan Sezer 3ea093cc 2018-02-25T10:15:00 SDL_test_fuzzer.c: fix strict aliasing warnings by using a union.
Sam Lantinga 849d042f 2018-02-24T08:58:22 Fixed bug 4091 - Undefined references to Android audio functions when SDL_AUDIO_DISABLED is on Manuel Sabogal If SDL is compiled with the Audio subsystem disabled there are some undefined references to the functions ANDROIDAUDIO_ResumeDevices and ANDROIDAUDIO_PauseDevices in the file src/video/android/SDL_androidevents.c.
Sam Lantinga 99a0c0f0 2018-02-24T08:23:44 Fixed MinGW-w64 build
Brandon Schaefer 0626486e 2018-02-23T19:12:04 Backout the vulkan change in d449dea10fc8 breaks Mir builds
Brandon Schaefer e17c3219 2018-02-23T11:24:26 mir: Disable Mir by default as Mir supports Wayland clients Also remove enabling VK support for Mir
Ryan C. Gordon 8891f591 2018-02-21T22:53:52 Backed out changeset 6c8521d53507 Apparently this still triggers a compiler warning, have to dig further.
Ryan C. Gordon fd8f12d2 2018-02-21T22:35:17 android: apparently they fixed this header at some point.
Ryan C. Gordon ac309df7 2018-02-21T22:27:09 vulkan: Possibly fix a compiler warning (-Wstrict-prototypes).
Ryan C. Gordon ed64d54d 2018-02-21T21:36:10 windows: added WIN_IsWindows7OrGreater().
Ryan C. Gordon 7e1fa0ce 2018-02-21T21:34:35 wasapi: fixed typo in an assert message.
Ryan C. Gordon c7e43665 2018-02-21T21:34:06 wasapi: let Windows do the resampling for us if possible.
Mark Callow 69958441 2018-02-21T09:58:21 Fix high-dpi support on macOS and simplify it and iOS variant. The detault drawableSize for a CAMetalLayer is its bounds x its scale. So it is sufficient to set the *layer's* scale to the desired value.
Ethan Lee 6e3d0a13 2018-02-21T12:42:30 Use new XInput mapping for Win10+ (Bugzilla #3960)
Sam Lantinga a0687a9c 2018-02-21T09:40:47 Fixed bug 4034 - Don't include _DllMainCRTStartup() if SDL_STATIC_LIB is defined.
Sam Lantinga 58f9be12 2018-02-18T09:09:56 Actually, this is needed for building with Visual Studio with both /MT and /MD. With the previous change, I get: 1> Creating library C:\projects\SDL\VisualC\Win32\Debug\SDL2.lib and object C:\projects\SDL\VisualC\Win32\Debug\SDL2.exp 1>LINK : error LNK2001: unresolved external symbol __DllMainCRTStartup@12
Sam Lantinga 3c9d3336 2018-02-18T08:57:01 Fixed bug 4034 - Do we really need _DllMainCRTStartup() in every Windows build? Andreas Falkenhahn In src/SDL.c there is this code: _DllMainCRTStartup(HANDLE hModule, ... The comment says that this is needed on Watcom C for some reason but why is it included then when building with Visual C as well? Shouldn't it be only included when compiling on Watcom C then? I'm asking because this code caused me a lot of headaches because I'm building a DLL that contains SDL and I link using /MT and the _DllMainCRTStartup() symbol obviously led to lots of trouble but it wasn't clear to me where the problem was because all I got from the linker was: LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup So I had to got through each and every object to see what the culprit was. See here for the full story: https://stackoverflow.com/questions/25067151/lnk2019-unresolved-external-symbol-main-referenced-in-function-tmaincrtstar/48177067#48177067 So if it isn't necessary on Visual C, please just leave that symbol out on Visual C so that it no longer leads to any trouble. Thanks.
Ryan C. Gordon 75a58303 2018-02-17T23:57:57 pthread: fix error code checks (thanks, Andreas!). Most pthread functions return 0 on success and non-zero on error, but those errors might be positive or negative, so checking for return values in the Unix style, where errors are less than zero, is a bug. Fixes Bugzilla #4039.
Ryan C. Gordon 2ea4419a 2018-02-17T20:18:48 yuv: patched to compile.
Ryan C. Gordon 7c0c2c22 2018-02-17T20:10:13 yuv: fixed variable declaration shadowing warnings. Fixes Bugzilla #4062.
Ryan C. Gordon 97494f53 2018-02-17T18:30:21 pulseaudio: Just read/dump captured data in FlushCapture. Apparently pa_stream_flush() doesn't work as expected: https://lists.freedesktop.org/archives/pulseaudio-discuss/2012-April/013328.html Fixes Bugzilla #4087.
Ryan C. Gordon 6867f618 2018-02-16T14:56:28 video: put a spinlock around a global linked list. This should only contend if you're allocating or freeing surfaces from multiple threads at once, and then just for a short time. Fixes Bugzilla #4084.
Sam Lantinga 8ddebfa0 2018-02-16T10:23:10 Fixed bug 4085 - X11: Allow configuring _NET_WM_BYPASS_COMPOSITOR through SDL hints Callum McGing This patch allows the user to disable the behaviour that blocks the compositor through a new hint: SDL_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR. This allows tools or other windowed applications to behave properly under KWin.
Sam Lantinga 5abd7d16 2018-02-13T22:58:20 Don't attempt WM_NCCALCSIZE adjustment when in fullscreen window transition
Sam Lantinga f6366c09 2018-02-13T08:15:39 Fixed bug 3920 - IBus not work with SDL 2.0.7 cjacker After updating from 2.0.5 to 2.0.7, Ibus not work anymore(fcitx still works). Compare with 2.0.5, there are two issues in SDL_ibus.c. 1, SetupConnection always return SDL_FALSE in 2.0.7. 2, 'SetCapabilities' method should be called on 'ibus_conn'. Patch attached.
Sam Lantinga 3b4c2fdf 2018-02-13T08:13:29 Fixed bug 3947 - replace strlcpy with memcpy in SDL_strdup()
Sam Lantinga 714085d3 2018-02-13T08:07:52 Fixed bug 3950 - Don't always call dbus_shutdown in SDL_DBus Alexander Larsson dbus_shutdown() is a debug feature which closes all global resources in the dbus library. Calling this should be done by the app, not a library, because if there are multiple users of dbus in the process then SDL could shut it down even though another part is using it. For example, i had an issue with this in mGBA, which uses both Qt and SDL, both using libdbus. I had a session bus, but no system bus (this was in a flatpak sandbox), and when SDL_DBus_Init() failed to init the system bus it called dbus_shudown() and continued on. This caused issues for Qt when running due to its session bus connections having disappeared beneath it.
sezero 40b27fd5 2018-02-12T17:00:00 revert the recent typecast assignment changes (see bug #4079) also change the void* typedefs for the two vulkan function pointers added in vulkan_internal.h into generic function pointer typedefs.
sezero ba0ecc67 2018-02-12T10:47:00 fix building SDL_audiotypecvt.c with gcc < 4.0
sezero 8a1ae708 2018-02-12T10:00:00 kill C99'ism in SDL_waylandvulkan.c
Sam Lantinga 6e01fbb7 2018-02-11T18:23:37 On Android show the system UI when an SDL window is windowed, hide the system UI when it's fullscreen, like we do on iOS. We're increasing the Android SDK minimum version to API 19, this doesn't increase the minimum target API, which is API 14.
Sam Lantinga 873141ac 2018-02-11T15:29:36 ISO C correct fix for casting void* to function pointer
Ryan C. Gordon 882215e1 2018-02-11T18:16:01 vulkan: Fix assignment of vkGetInstanceProcAddr on Windows. "*(void**)pfn = LoadAddress()" would cast the NULL pointer in pfn to a void**, and then dereference it, which wasn't what we wanted. Replaced with a clearer cast operation.
Sam Lantinga 1143857d 2018-02-10T12:43:11 Fixed bug 4073 - Unquoted Unicode argument parsing broken on Windows due to incorrect usage of SDL_isspace()
Sam Lantinga d5f293a7 2018-02-09T16:31:57 Fixed compile warning
Sam Lantinga 7c360027 2018-02-09T16:01:11 Fixed compiler warning on Android