Log

Author Commit Date CI Message
Sam Lantinga c1fd0fbb 2017-09-04T22:14:57 Fixed compiler warning with mingw-w64
Sam Lantinga 657ad72a 2017-09-04T21:16:28 Added some more big 2.0.6 changes
Sam Lantinga d75fea89 2017-09-04T20:48:01 Updated WhatsNew.txt for 2.0.6
Sam Lantinga 67f9348b 2017-09-04T11:46:14 Fixed bug 3790 - Memory leak with surfaces blitting on each other bastien.bouclet When creating two surfaces and blitting them onto the other, SDL's internal reference counting fails, and one of the surfaces is not freed when calling SDL_FreeSurface. Example code : SDL_Surface *s1 = SDL_CreateRGBSurfaceWithFormat(0, 640, 480, 32, SDL_PIXELFORMAT_ARGB8888); SDL_Surface *s2 = SDL_CreateRGBSurfaceWithFormat(0, 640, 480, 32, SDL_PIXELFORMAT_ARGB8888); SDL_BlitSurface(s1, NULL, s2, NULL); SDL_BlitSurface(s2, NULL, s1, NULL); SDL_FreeSurface(s2); SDL_FreeSurface(s1); With this example, s1 is not freed after calling SDL_FreeSurface, its refcount attribute is still positive.
David Ludwig 532446a6 2017-09-03T17:33:49 macOS: bug-fix for #3793, "fullscreen toggle does not maintain SDL_Renderer's logical size" This also seems to fix the follow-up issue in bug #3719, whereby the initial fix caused the SDL window to move, after transitioning from fullscreen to windowed-mode
David Ludwig 2ea09903 2017-09-03T16:36:22 WinRT: listed VS 2017 optional-component requirements
Ryan C. Gordon a12989f9 2017-09-03T13:20:33 vulkan: Changed SDL_WINDOW_VULKAN value to match Tizen's fork.
Ryan C. Gordon 167398b3 2017-09-02T19:35:32 video: Let video targets optionally decide their default OpenGL configs. This is necessary because the Raspberry Pi is a strange beast, that believes it has OpenGL support (through glX?) but generally has GLES2 support. So when using the raspberry video target, we need to force this to default to a GLES2 context, or by default SDL_CreateWindow() will fail, deep down when it tries to load the proper GL library. Fixes testsprite2 (and basically everything else that wasn't testgles2) when run on a Raspberry Pi without a X server. Please note that other targets might also need this filled in, the Raspberry Pi is just the most prominent and readily-available System-On-A-Chip style thing on my desk. :)
Ryan C. Gordon 3267398d 2017-09-02T16:41:14 sndio: Patched to compile if SIO_DEVANY isn't defined. (It isn't in whatever Raspbian is currently shipping.)
Sam Lantinga c26946e9 2017-09-01T12:54:38 Fixed bug 3792 - [KMS/DRM] Wrong GBM format Romain Tisserand Using KMS/DRM driver from WIP SDL2.0.6 on Linux/ARM SoC RockChip RK3328 (ARM Mali 450 MP2 GPU). The current code is using GBM_BO_FORMAT_XRGB8888 as GBM buffer format specifier. The Mali driver (it has been confirmed some other vendor implementations too) expects GBM_FORMAT_XRGB8888. The Mesa implementation is actually handling both values as the same, but it's not implemented like this into every gbm.h vendor header. https://github.com/ideak/mesa/blob/master/src/gbm/backends/dri/gbm_dri.c So with stock SDL2 on my card (Mali vendor implementation), it does not work, eglCreateWindowSurface fails, and gbm_is_format_supported fails too (with the BO variant). It runs fine with GBM_FORMAT_XRGB8888. Here is a link of the gbm.h from Mali user-space driver : https://github.com/rockchip-linux/libmali/blob/rockchip/include/gbm.h
Ryan C. Gordon 74043994 2017-09-01T14:08:09 x11: Correctly restore previous GL context after sacrificial context is done.
Ryan C. Gordon a3dda100 2017-09-01T14:00:11 x11: don't try to make a NULL GL context current when we already did that.
Ryan C. Gordon 4649ac46 2017-09-01T13:57:40 x11: Clean up sacrificial GL context code. Check for failures, restore any previously-current context.
Ryan C. Gordon 507659c6 2017-09-01T13:27:53 x11: Make a sacrificial glX context to check for extensions during init. This is necessary because we need to see if GLES compat extensions exist. All of this code (including ShouldUseTextureFramebuffer()) should be revisited after 2.0.6 ships; ideally we don't make throwaway contexts if we can avoid it...but maybe we can't. I hear Vulkan is pretty cool. Fixes Bugzilla #3725.
Alex Szpakowski 20207abf 2017-08-31T22:07:28 macOS: Update controller mapping of Steelseries Stratus XL to account for reversed thumbstick y-axis values (bug #3483).
Alex Szpakowski d7ae3131 2017-08-31T21:34:29 macOS: Fix menubar items being enabled when they shouldn't be.
Alex Szpakowski b959be25 2017-08-31T21:26:13 Code style cleanup in the Cocoa and UIKit vulkan files.
Alex Szpakowski cfd7a7fa 2017-08-31T21:13:32 macOS: Prevent unwanted native fullscreen (Spaces) toggles when the window is in fullscreen or isn't resizable. Fixes bug #3691.
Sam Lantinga ff76f8e5 2017-08-31T15:17:59 Fixed bug 3791 - SDL_bits.h: __builtin_clz is supported in gcc >= 3.4 Ozkan Sezer __builtin_clz is supported in gcc >= 3.4. The following patchlet adjusts SDL_bits.h for it.
Sam Lantinga 6c38c900 2017-08-31T15:12:08 Update Android SDK required to API level 16 Sylvain Some API 16 methods are used (InputDevice: getDescriptor(), getVibrator()), so we need to compile at least with SDK API 16. Hence default.properties and project.properties have been modified to use android-16. There are also some modification to SDLActivity.java not to use getVibrator() if we run under API 16. And not to check to presence of hasVibrator() if we are under API 11. -some hard-coded constant can be expandend. - rename a local variable (hasVibrator to hasVibratorService)
Sam Lantinga b54bcb34 2017-08-30T23:30:24 Fixed bug 3483 - Steelseries Nimbus MFi controller reversed Y-axis analog stick benjamin.feng Probable underlying cause: https://bugzilla.libsdl.org/show_bug.cgi?id=3124#c5 "If you download and build the HID Calibrator sample you can see that these are totally legitimate HID devices (except for inverting the Y-axis of joysticks, which is contrary to the HID specification but does make them more compatible with games compiled expecting XBOX controllers)."
Sam Lantinga 8e160a34 2017-08-30T23:02:39 Convert tabs to spaces in game controller database entries
Sam Lantinga 347fe704 2017-08-30T14:25:01 Fixed bug 3789 - Android : small clean up Sylvain Since https://hg.libsdl.org/SDL/rev/6546daa45a02 SDL_android_main.c is empty and then produce a warning nativeInit does not exist and dont need to be mark undefined
Sam Lantinga b5f31c39 2017-08-30T09:44:38 Moved haptic source files into the proper folder
Sam Lantinga e53c5c5c 2017-08-30T00:40:06 Fix QNX build - prioritize system EGL headers over the Khronos ones
Sam Lantinga 9ca62923 2017-08-29T23:14:39 Added some missing render capability flags
Sam Lantinga c3d428d4 2017-08-29T23:12:26 Fixed line breaks in verbose test logging output
Sam Lantinga 94e0f3e9 2017-08-29T22:52:17 Added some debug messaging for previously unhandled events
Sam Lantinga 2d10a3f2 2017-08-29T22:24:59 The dummy video driver check is now covered by explicitly checking for cocoa above.
Sam Lantinga 92bf6085 2017-08-29T22:04:43 Fixed bug 3616 - SDL_GL_CreateContext fails with SDL_GL_CONTEXT_DEBUG_FLAG and ANGLE/GLES 2.0 Colin Barrett Using the pre-built x86 devel libs from here: https://www.libsdl.org/release/SDL2-devel-2.0.5-VC.zip If I have: SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASK, SDL_GL_CONTEXT_PROFILE_ES); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); SDL_GL_SetAttribute(SDL_GL_CONTEXT_FLAGS, SDL_GL_CONTEXT_DEBUG_FLAG); and I'm using ANGLE/(a GL driver that doesn't provide an ES2 context) such that SDL_EGL_CreateContext is called by SDL_GL_CreateContext, I get the error "Could not create EGL context (context attributes are not supported)" and no context is created. Looking at the code in SDL_EGL_CreateContext - if gl_config.flags is non-zero, it looks like the code in the section guarded with "#ifdef EGL_KHR_create_context" should be executed - but it apparently isn't. Is it possible this section hasn't been compiled into the pre-built libraries? If I build SDL2.dll myself using the Visual C++ solution (VS2015 Community Update 3) then the call succeeds as I expect
Sam Lantinga 8fc1fb08 2017-08-29T21:42:22 Fixed bug 3719 - Cocoa - Incorrect window size when leaving fullscreen bastien.bouclet When exiting a "fullscreen space" on OS X, windows don't go to their defined "windowed mode size", but go back to their previous size. Steps to reproduce: 1. Create a windowed mode SDL window 2. Toggle it to fullscreen with the SDL_WINDOW_FULLSCREEN_DESKTOP flag 3. While in fullscreen, change the windowed mode size using SDL_SetWindowSize 4. Toggle the window back to windowed mode Expected result: - The window has the size specified during step 3. Actual result: - The window has the size specified when creating the window in step 1. Attached is a minimal reproduction test case. The attached test case works as expected on X11 and Windows.
Ryan C. Gordon 846a9ab9 2017-08-29T18:25:55 test: forgot to change a variable. Fixes Bugzilla #3787.
Ryan C. Gordon 4fc01638 2017-08-29T18:16:38 test: Fix for negative int that was now a size_t (thanks, Ozkan!). Fixes Bugzilla #3787.
Ryan C. Gordon 21e32bac 2017-08-29T16:30:49 egl: Cast to size_t, in case platform's NativeDisplayType isn't a pointer. (fixes compiler warnings on QNX.)
Ryan C. Gordon eb3c66d3 2017-08-29T16:05:03 A few more compiler warnings fixed.
Ryan C. Gordon ae667da6 2017-08-29T15:52:49 Fixed a bunch of compiler warnings.
Sam Lantinga 629f8aba 2017-08-29T09:02:04 Updated documentation, you don't need to initialize the audio subsystem to do in-place format conversion. (Thanks Simon Hug!)
Sam Lantinga abf8fc4c 2017-08-29T08:27:23 Fixed check for Mac OS X 10.11+ SDK (thanks Edward Rudd!)
Sam Lantinga 2d655cd8 2017-08-29T02:32:53 MAC_OS_X_VERSION_MAX_REQUIRED isn't actually set in recent Xcode versions
Sam Lantinga 737ed973 2017-08-29T01:04:48 Removed Metal and QuartzCore frameworks which aren't needed for Vulkan support
Sam Lantinga c684eb2c 2017-08-28T23:04:47 Add a way to set the context when other activities are active so many SDL API functions still work.
Sam Lantinga 130138fa 2017-08-28T22:44:48 Fixed bug 3785 - fix windows build after revision 11382 Ozkan Sezer fix windows build after revision 11382: commit 2026e42e377a renamed _SDL_msctf_h to SDL_msctf_h_ . SDL_windowskeyboard.c relies on that macro, so update it accordingly.
Sam Lantinga c0530bcd 2017-08-28T22:42:41 We removed QuartzCore link dependency in commit 5be6badaf7e1
Sam Lantinga 8ac85744 2017-08-28T22:36:45 Fixed Vulkan configure check for Android and added one for Mac OS X
Sam Lantinga 90b38a5d 2017-08-28T22:13:45 Fixed bug 3786 - building against a Mac OS X SDK < 10.11 fails since the vulkan merge Ozkan Sezer Since the Vulkan merge, building against a Mac OS X SDM older than 10.11 fails in SDL_cocoametalview.m because Metal.framework is not present. There is no conditional compiling in SDL_cocoametalview.m either, so --disable-video-vulkan doesn't help with anything. (The configury doesn't check darwin for x86_64 either, but it's another story.) I cross-build against 10.8 SDK on linux using clang-3.4.2 and this is a problem for me. Will this be fixed?
Sam Lantinga d619d885 2017-08-28T21:42:39 Fixed bug 3662 - Error message when using the audio conversion setup without an initialized audio subsystem is a bit vague Simon Hug This issue actually raises the question if this API change (requirement of initialized audio subsystem) is breaking backwards compatibility. I don't see the documentation saying it is needed in 2.0.5.
Ryan C. Gordon b128e880 2017-08-29T00:41:45 audio: A whole bunch of improvements to audio conversion (thanks, Solra!). "Major changes, roughly in order of appearance: - Use float math everywhere, instead of promoting to double and casting back all the time. - Conserve sound energy when downmixing any channel into two other channels. - Add a QuadToStereo filter. (The previous technique of reusing StereoToMono never worked, since it assumed an incorrect channel layout for 4.0.) - Add a 71to51 filter. This removes just under half of the cases the previous code would silently break in. - Add a QuadTo51 filter. More silent breakage fixed. - Add a 51to71 filter, removing another almost-half of the silently broken cases. - Add 8 to the list of values SDL_SupportedChannelCount will accept. - Change SDL_BuildAudioCVT's channel-related logic to handle every case, and to actually fail if it fails instead of silently corrupting sound data and/or crashing down the road." (Note that SDL doesn't otherwise support 7.1 audio yet, but hopefully it will soon and the 7.1 converters are an important piece of that. --ryan.) Fixes Bugzilla #3727.
Ryan C. Gordon 620f5342 2017-08-29T00:36:17 stdlib: An implementation of SDL_scalbn using ldexp() (thanks, Ozkan!). Fixes Bugzilla #3767.
Ryan C. Gordon a0cd7d6b 2017-08-29T00:02:04 audio: Converting audio samples from int to float was using wrong equation. Fixes Bugzilla #3775.
Sam Lantinga 1067b528 2017-08-28T20:52:05 Fixed building with an older Mac OS X SDK
Sam Lantinga e8b114ec 2017-08-28T19:32:08 Vulkan support on Mac OS X introduces a link time dependency (CAMetalLayer) on 10.11 and newer
Sam Lantinga 30947476 2017-08-28T19:30:59 We don't need the VULKAN_SDK to build SDL with Vulkan support anymore
Sam Lantinga 09e43d45 2017-08-28T17:28:09 Added missing Visual Studio 2010 project for testvulkan
Sam Lantinga aa85436e 2017-08-28T14:45:19 Fixed compile warning
Sam Lantinga da84c3bf 2017-08-28T14:44:21 Added a log message for nativeRunMain()
Sam Lantinga 60182eb7 2017-08-28T14:40:21 Allow overriding the main entry point on Android
Sam Lantinga dbb0a2aa 2017-08-28T14:34:15 Removed the need for libSDL2main.a on Android, and separated JNI initialization out for other integrations
Sam Lantinga 93415899 2017-08-28T13:40:32 Removed unneeded Vulkan symbol definitions
Sam Lantinga 2a945b44 2017-08-28T10:03:39 Fixed bug 2361 - [Android] Joysticks do not have unique IDs David Brady When I attempted to make a mapping file for Android gamepads, I quickly discovered that most of the ones that I have here show up as the same device (Broadcom Bluetooth HID), meaning that it was impossible to make mappings on Android, since every device looked the same. This patch will check for the existence of the getDescriptor function added in Jelly Bean, and use it if it's there. The Android Dashboard says that the majority of Android phones should support this function, and doing it this way will not force us to bump up our API version.
Sam Lantinga c45932ba 2017-08-28T09:54:16 Fixed bug 2277 - Hardware keyboard control key sequences don't get reported chw Control key sequences from hardware keyboards (wireless/USB/bluetooth) get not properly reported on Android devices. The attached patch uses the idea from http://stackoverflow.com/questions/12337117/capture-all-ctrl-under-android to make control key sequences appear as normal SDL_KEYDOWN events instead of cooked text input.
Sam Lantinga 0560544d 2017-08-28T09:51:25 Fixed 3783 - Default libGL path for directFB on Linux differs from x11 path Clayton Craft The default path used by directfb for libGL is different than the default path used by x11 in SDL2: ./src/video/directfb/SDL_DirectFB_opengl.c: path = "libGL.so"; ./src/video/x11/SDL_x11opengl.c: #define DEFAULT_OPENGL "libGL.so.1" On at least one distro (Alpine Linux), libGL.so is not created (or more accurately the symlink to libGL.so.1 is not created). For consistency, the 'path' variable in SDL_DirectFB_opengl.c should patch the DEFAULT_OPENGL in SDL_x11opengl.c ("libGL.so.1")
Sam Lantinga d28cb702 2017-08-28T09:41:00 Fixed bug 3781 - unbalanced #pragma pack(pop) in close_code.h Ozkan Sezer Revision 288 (http://hg.libsdl.org/SDL/rev/2f5a6062db86) excluded the Watcom compiler from forcing 4 byte structure packing in begin_code.h. However, it missed updating close_code.h, which now has an unbalanced #pragma pack(pop) if the compiler is Watcom. The issue seems to have crawled into SDL2, too.
Sam Lantinga 959ae901 2017-08-28T02:30:41 Instantiate the CAMetalLayer so SDL_Vulkan_CreateSurface() doesn't fail Error message was: [mvk-info] MoltenVK version 0.18.2. Vulkan version 1.0.51. [***MoltenVK ERROR***] VK_ERROR_INITIALIZATION_FAILED: On-screen rendering requires a view that is backed by a layer of type CAMetalLayer. 2017-08-28 02:17:29.579 testvulkan[95627:1716939] ERROR: SDL_Vulkan_CreateSurface(): vkCreateMacOSSurfaceMVK failed: VK_ERROR_INITIALIZATION_FAILED
Sam Lantinga 6dd3f55d 2017-08-28T01:59:53 Fixed WinRT build after changing the header guard preprocessor symbol
Sam Lantinga ff8d2e14 2017-08-28T01:42:18 Fixed build when Wayland is dynamically loaded
Sam Lantinga edaa0ef5 2017-08-28T00:54:02 Fixed analyzer warning "Call to 'calloc' has an allocation size of 0 bytes"
Sam Lantinga 3c7f9d69 2017-08-28T00:51:14 Fixed redefinition of typedef warnings and errors on BSD
Sam Lantinga 50efbda7 2017-08-28T00:43:14 Fixed mingw Windows build, since SDL_vulkan_internal.h includes windows.h
Sam Lantinga 0d011ec6 2017-08-28T00:22:23 Renaming of guard header names to quiet -Wreserved-id-macro
Sam Lantinga ce2b1644 2017-08-28T00:11:38 Be clear that disabling Vulkan surface support disables the entire SDL Vulkan integration
Sam Lantinga 5cd1a959 2017-08-27T23:53:09 Fixed Android build with Vulkan support
Sam Lantinga 0cebef60 2017-08-27T23:39:55 Fixed code style for new Vulkan API functions
Sam Lantinga ea91908e 2017-08-27T23:39:38 Fixed Android ABI check to match vulkan/vk_platform.h
Sam Lantinga 34bdee53 2017-08-27T23:31:31 Make the androidbuildlibs.sh script executable
Sam Lantinga 37ce9f27 2017-08-27T23:13:15 Fixed typedef redefinition errors when including both SDL_vulkan.h and vulkan.h You should always include vulkan/vulkan.h first, then include SDL_vulkan.h
Sam Lantinga 9da4717d 2017-08-27T22:36:03 Fixed Windows warning
Sam Lantinga 82ffabc8 2017-08-27T22:34:15 Fixed Android build
Sam Lantinga 24a0d3bc 2017-08-27T22:27:45 Don't define Vulkan types if vulkan.h has already been included
Sam Lantinga 1f2e151b 2017-08-27T22:20:17 Added Vulkan support to the Visual Studio 2010 solution
Sam Lantinga 213356cd 2017-08-27T21:55:31 Don't need the Vulkan SDK for the Visual Studio 2008 project anymore
Sam Lantinga ded5b3a4 2017-08-27T21:05:18 Fixed crash at shutdown if the window couldn't be created
Sam Lantinga 071e1018 2017-08-27T20:41:48 We use the SDL Vulkan headers
Sam Lantinga eb5392ad 2017-08-27T20:41:29 Added the new Vulkan API functions to exported functions
Ryan C. Gordon c722e58d 2017-08-27T23:25:12 vulkan: Include a copy of vulkan.h and vk_platform.h. Now we can provide Vulkan support in the build even if the build box doesn't have a Vulkan SDK, since we dynamically link to the library anyhow.
Sam Lantinga 803fd6d5 2017-08-27T19:32:08 Use SDL_Vulkan_GetDrawableSize() instead of SDL_GL_GetDrawableSize()
Ryan C. Gordon 25e3a1ec 2017-08-27T22:15:57 vulkan: Initial Vulkan support! This work was done by Jacob Lifshay and Mark Callow; I'm just merging it into revision control.
Sam Lantinga 8e7998e1 2017-08-27T19:10:30 Fixed bug 3710 - SDL_OpenAudio(desired, obtained) doesn't update desired's size when obtained is NULL David Ludwig I've created a new set of patches. I am happy to create more, if it would help. One version only copies 'size'. A second version copies both 'size' and 'silence'. When looking over the documentation for SDL_OpenAudio in SDL_audio.h, it mentioned that both 'size' and 'silence' were things that SDL_OpenAudio would calculate. Regarding *both* patches, I did notice that SDL 1.2 appears to have always modified desired's size and silence fields. The SDL wiki, at https://wiki.libsdl.org/SDL_OpenAudio#Remarks , does note:
Sam Lantinga 003d491f 2017-08-27T19:05:57 Fixed bug 3724 - Allow Angle Static Link Carlos We would like to add a switch (define) that allows us to compile Angle statically with SDL. That is, getting rid of the OpenGL DLL. Usually you need OpenGL to be loaded dynamically as DLL because implementation is provided by the system but no need with Angle. Only 2 files need modification and it shouldn't affect current behaivor: include/SDL_egl.h and src/video/SDL_egl.c, as in here https://github.com/native-toolkit/sdl/pull/10/files The flag name could be SDL_VIDEO_STATIC_ANGLE (instead of NATIVE_TOOLKIT_STATIC_ANGLE) as discussed here https://github.com/native-toolkit/sdl/pull/10 We have tested this with both Windows and UWP, using NME engine (https://github.com/haxenme/nme). Releated issue: https://bugzilla.libsdl.org/show_bug.cgi?id=1820
Sam Lantinga aad997fc 2017-08-27T19:00:03 Fixed bug 3740 - atexit() in test/testime.c
Sam Lantinga b7c5d151 2017-08-27T18:53:30 SDL_dynapi.c: add missing SDLCALL to macros.
Sam Lantinga a38f127e 2017-08-27T18:52:43 Swapped conditional arguments for standard SDL readability
Sam Lantinga 30fe9a67 2017-08-27T18:49:36 SDL_dynapi.h: revert commit ee88fe3e353e in order to enable dynapi [ optional ]
Sam Lantinga 50d3fe21 2017-08-27T18:49:11 SDL_dynapi_procs.h: adjust SDL_CreateThread for os/2
Sam Lantinga bf126828 2017-08-27T18:48:51 SDL_thread.h: fix os/2 defines (rev 11340:2688d85b817c was a missing patch)
Sam Lantinga fe21a747 2017-08-27T18:43:52 Fixed bug 2266 - please add notifications for clipboard updates on Android Sylvain Hi! here's a patch for that with two class loaded regarding API level. Test both case : before API 11 and after. I also remove now unused GetSystemServiceFromUIThread() and minor clean-up (haptic warning prototype).
Sam Lantinga 6885bc88 2017-08-27T18:36:54 Fixed bug 2265 - Voice to text feature on Android repeats some text via SDL_TEXTINPUT Sylvain Small patch for this issue. I tested it and it seems to work. - it can send several backspaces (instead of only 1). - it calls directly "sendKeyEvent()" instead of "super.sendKeyEvent()". otherwise, it would go through the android internals, calling again "onKey()". and then the "backspace" would arrive after the next "commitText()".
Sam Lantinga 5ca01522 2017-08-26T21:17:12 Fixed bug 3774 - Cmake build fails for Android sfalexrog Android haptic code was not added to CMakeLists.txt, leading to build failures when targeting Android platform. Attached patch adds Android haptic driver to source sets and adds configuration parameter to SDL_config.h.cmake.
Patrice Mandin bbd9acdd 2017-08-26T21:20:20 Add support for GameSir G4s
Ryan C. Gordon 73f866cf 2017-08-25T15:16:39 windows: Attempt to make Visual Studio not hardcode a call to memset().
Ryan C. Gordon e58c7920 2017-08-25T12:51:42 x11: Patched to compile with DEBUG_XEVENTS defined.