Log

Author Commit Date CI Message
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 ed4fe4c9 2018-05-15T00:04:02 testresample: correctly output .wav files that have floating point audio.
Ryan C. Gordon 4718791f 2018-05-14T00:03:39 cpuinfo: Make CPU flags easier to read and add to.
Ozkan Sezer 425149f4 2018-05-11T09:37:00 remove testvulkan.vcproj (was a VS2008 left-over.)
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 c11ae93a 2018-05-10T08:28:00 SDL_stdinc.h: move the alloca() includes before begin_code.h
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 c04dca0d 2018-05-07T19:26:02 Fixed bug 4159 - Windows headers are included after packing alignment change lectem The SDL_syswm.h header includes the windows.h header after including begin_code.h which changes the structure packing alignment. It seems this is not safe as suggested by the following warning : warning C4121: 'JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V2': alignment of a member was sensitive to packing
Sam Lantinga 0bade9b4 2018-05-05T10:31:03 Fixed bug 4154 - Fix three empty variable tests in configure Zack Middleton Running top-level SDL configure on macOS 10.11 resulted in the errors below because automake removed the brackets about the tests. ./configure: line 15756: : command not found ./configure: line 15759: -Iinclude -I/Users/zack/SDL/include -idirafter /Users/zack/SDL/src/video/khronos : No such file or directory ./configure: line 15763: : command not found
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 db94dfb1 2018-04-23T21:55:59 Fixed bug 4144 - CMake complains about trailing spaces in sdl2.pc Azamat H. Hackimov When you try use SDL2 2.0.8 in CMake project in Linux, it complains about trailing spaces in sdl2.pc: CMake Error at CMakeLists.txt:147 (add_executable): Target "TestSimpleMain" links to item "-L/usr/lib64 -lSDL2 " which has leading or trailing whitespace. This is now an error according to policy CMP0004.
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 5e8c8167 2018-04-15T09:37:51 Fixed bug 4135 - Broken symlink libSDL2.so since rev11940 Tiago O. Symlink points to the wrong folder, and target will always have debug postfix, so it'll be broken for other build types.
Sam Lantinga b7228bc5 2018-04-11T18:28:03 Added support for the GameSir G3w
Bastien Bouclet 9856d967 2018-04-11T06:16:23 Fix the include path in the installed CMake target import file Previously the include path was {INSTALL_PREFIX}/include, it is now {INSTALL_PREFIX}/include/SDL2 to be consistent with the other build and package configuration systems. Fixes #4128.
Saad Khattak 6b5ed0fd 2018-04-10T08:03:54 Added debug postfix to install command and fixed library path
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 1cfbe664 2018-03-12T18:41:06 Added Mac OpenGL ES configure support
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 6d39e67b 2018-03-10T21:20:25 Fixed bug 4103 - SDL_cpuinfo.h provokes warnings with -Wundef on non-x86 hosts Felix Geyer Forwarding from https://bugs.debian.org/892087 quoting verbatim: The SDL2 header SDL_cpuinfo.h generates gcc warnings if the program using it compiles with the -Wundef warning. (In particular, this means that QEMU builds using it fail on at least sparc hosts, since QEMU dev builds use both -Wundef and -Werror.). /usr/include/SDL2/SDL_cpuinfo.h:63:5: warning: "HAVE_IMMINTRIN_H" is not defined, evaluates to 0 [-Wundef] #if HAVE_IMMINTRIN_H && !defined(SDL_DISABLE_IMMINTRIN_H)
Micha? Janiszewski 0a5c1065 2018-03-10T21:16:14 Fix ARM builds with MSVC
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 e9b29ed0 2018-03-02T22:48:15 Fixed bug 4101 - configure needs regenerating after changeset 11894
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
Sam Lantinga 4f695bc5 2018-03-01T09:32:53 Added tag release-2.0.8 for changeset dfbae17e87ac
Sam Lantinga e9fc66a0 2018-03-01T08:26:10 Added patch note for Android Studio support
Sam Lantinga 0df7fe84 2018-03-01T08:22:56 Temporarily disabled fullscreen switching code on Android, until we can resolve bug 4096 - Enabling fullscreen on Android causes the app to toggle fullscreen mode continuously in a loop
Sam Lantinga eac37666 2018-03-01T08:08:20 Added a patch note for OpenGL ES support on Mac
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"
Sam Lantinga 99683f7c 2018-02-26T08:39:25 Added patch note about the Vulkan Mac SDK
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.
Olli Kallioinen 5cbb90da 2018-02-25T19:22:47 cmake: Set debug library name suffix per target instead of setting it globally. Don't add a suffix on android
Ozkan Sezer 3ea093cc 2018-02-25T10:15:00 SDL_test_fuzzer.c: fix strict aliasing warnings by using a union.
Sam Lantinga cbfee82d 2018-02-24T09:09:20 Moved Android patch note into the Android section
Sam Lantinga 6cf4d0e4 2018-02-24T08:59:58 Fixed bug 4092 - CMake support for building everything in the "test" directory Eric Wasylishen Patch to support building the tests with cmake. Disabled by default, use: "cmake .. -DSDL_TEST=YES" to enable the tests. Tested on macOS 10.13 with the ninja, makefile, and Xcode generators, and Windows 10 with the Visual Studio 2017 generator.
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 8e4afb55 2018-02-24T08:42:04 Added patch note for Ryan's work
Sam Lantinga b33dbd27 2018-02-24T08:40:30 Added missing file to tvOS build
Sam Lantinga 99a0c0f0 2018-02-24T08:23:44 Fixed MinGW-w64 build
Sam Lantinga 5adc1b7d 2018-02-24T08:18:09 Updated documentation with API changes in SDL 2.0.8
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 c00858bf 2018-02-20T09:04:31 Fixed bug 4088 - Fix Metal link errors with test programs in SDLTest.xcodeproj Eric Wasylishen The following patch adds Metal.framework to the "link binary with libraries" section of each test program, with "status" set to "optional", which fixes link errors on all of the test programs. I'm not sure if this is a correct fix - the fact that this was necessary might indicate the static SDL2.a library has a hard dependency on Metal.framework (?) - but it gets the test programs working in Xcode again. It also adds testyuv_cvt.c to the testoverlay2 target, fixing a link error.
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.