Tue, 05 Sep 2017 08:24:38 -0700Fixed bug 3273 - Fix for slow video subsystem initialization when using XRandR.
Sam Lantinga <slouken@libsdl.org> [Tue, 05 Sep 2017 08:24:38 -0700] rev 11454
Fixed bug 3273 - Fix for slow video subsystem initialization when using XRandR.

Martín Golini

I'm having a very slow initialization of the video subsystem that locks the window creation for about 500 ms ( tested in at least 4 different systems ). What i found is that X11_InitModes_XRandR is using XRRGetScreenResources, that explicitly ask to poll the hardware for changes. This is not really necessary since if the data is already available you can use XRRGetScreenResourcesCurrent.
I attached a tentative patch that fix this issue. With the patch there's no lock when the subsystem is initialized and the window creation is instant in my applications. The patch only uses XRRGetScreenResourcesCurrent in X11_InitModes_XRandR but it could be potentially used in X11_GetDisplayModes and X11_SetDisplayMode.

Mon, 04 Sep 2017 23:10:12 -0700Fixed typos in 2.0.6 patch notes
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 23:10:12 -0700] rev 11453
Fixed typos in 2.0.6 patch notes

Mon, 04 Sep 2017 22:51:28 -0700Added SDL_vulkan.h to the Mac OS X framework headers
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 22:51:28 -0700] rev 11452
Added SDL_vulkan.h to the Mac OS X framework headers

Mon, 04 Sep 2017 22:14:57 -0700Fixed compiler warning with mingw-w64
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 22:14:57 -0700] rev 11451
Fixed compiler warning with mingw-w64

Mon, 04 Sep 2017 21:16:28 -0700Added some more big 2.0.6 changes
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 21:16:28 -0700] rev 11450
Added some more big 2.0.6 changes

Mon, 04 Sep 2017 20:48:01 -0700Updated WhatsNew.txt for 2.0.6
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 20:48:01 -0700] rev 11449
Updated WhatsNew.txt for 2.0.6

Mon, 04 Sep 2017 11:46:14 -0700Fixed bug 3790 - Memory leak with surfaces blitting on each other
Sam Lantinga <slouken@libsdl.org> [Mon, 04 Sep 2017 11:46:14 -0700] rev 11448
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.

Sun, 03 Sep 2017 17:33:49 -0400macOS: bug-fix for #3793, "fullscreen toggle does not maintain SDL_Renderer's logical size"
David Ludwig <dludwig@pobox.com> [Sun, 03 Sep 2017 17:33:49 -0400] rev 11447
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

Sun, 03 Sep 2017 16:36:22 -0400WinRT: listed VS 2017 optional-component requirements
David Ludwig <dludwig@pobox.com> [Sun, 03 Sep 2017 16:36:22 -0400] rev 11446
WinRT: listed VS 2017 optional-component requirements

Sun, 03 Sep 2017 13:20:33 -0400vulkan: Changed SDL_WINDOW_VULKAN value to match Tizen's fork.
Ryan C. Gordon <icculus@icculus.org> [Sun, 03 Sep 2017 13:20:33 -0400] rev 11445
vulkan: Changed SDL_WINDOW_VULKAN value to match Tizen's fork.