Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package sdl2-compat for openSUSE:Factory checked in at 2026-04-05 18:23:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sdl2-compat (Old) and /work/SRC/openSUSE:Factory/.sdl2-compat.new.21863 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sdl2-compat" Sun Apr 5 18:23:48 2026 rev:9 rq:1344532 version:2.32.66 Changes: -------- --- /work/SRC/openSUSE:Factory/sdl2-compat/sdl2-compat.changes 2026-02-05 17:58:01.481628481 +0100 +++ /work/SRC/openSUSE:Factory/.sdl2-compat.new.21863/sdl2-compat.changes 2026-04-05 18:24:03.505676410 +0200 @@ -1,0 +2,11 @@ +Sat Apr 4 00:56:13 UTC 2026 - Jan Engelhardt <[email protected]> + +- Update to release 2.32.66 + * Fixed video flicker in Domino-Chain + * Fixed window size being delivered to windows created in + fullscreen mode + * Fixed double scaling when setting a logical presentation size + * Fixed SDL_LoadBMP() and SDL_LoadBMP_RW() returning < 8bpp + surfaces in some cases + +------------------------------------------------------------------- Old: ---- sdl2-compat-2.32.64.tar.gz sdl2-compat-2.32.64.tar.gz.sig New: ---- sdl2-compat-2.32.66.tar.gz sdl2-compat-2.32.66.tar.gz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sdl2-compat.spec ++++++ --- /var/tmp/diff_new_pack.EXUObS/_old 2026-04-05 18:24:04.165703491 +0200 +++ /var/tmp/diff_new_pack.EXUObS/_new 2026-04-05 18:24:04.165703491 +0200 @@ -19,7 +19,7 @@ %define lname libSDL2-2_0-0 %global _lto_cflags %_lto_cflags -ffat-lto-objects Name: sdl2-compat -Version: 2.32.64 +Version: 2.32.66 Release: 0 Summary: SDL-2.0 Compatibility Layer for Simple DirectMedia Layer 3.0 License: Zlib ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.EXUObS/_old 2026-04-05 18:24:04.201704968 +0200 +++ /var/tmp/diff_new_pack.EXUObS/_new 2026-04-05 18:24:04.205705133 +0200 @@ -1,5 +1,5 @@ -mtime: 1770234664 -commit: 26384e140e6fabc1f895ce5b11a581ec437f4f46a050c7a09d2fc9f206a5aea9 +mtime: 1775264215 +commit: 4ce8e421145834a3da17d3392d5819594052e7cf47513084a260421d981582af url: https://src.opensuse.org/jengelh/sdl2-compat revision: master ++++++ sdl2-compat-2.32.64.tar.gz -> sdl2-compat-2.32.66.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/.git-hash new/sdl2-compat-2.32.66/.git-hash --- old/sdl2-compat-2.32.64/.git-hash 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/.git-hash 2026-04-04 02:18:01.000000000 +0200 @@ -1 +1 @@ -3e1eaa5920e0426b8131870a9259f23e75d429d9 +2b38b378bb435204087f738c56524c5328f9534d diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/CMakeLists.txt new/sdl2-compat-2.32.66/CMakeLists.txt --- old/sdl2-compat-2.32.64/CMakeLists.txt 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/CMakeLists.txt 2026-04-04 02:18:01.000000000 +0200 @@ -3,7 +3,7 @@ # cmake -DSDL3_INCLUDE_DIRS=/opt/SDL3/include [other stuff ....] cmake_minimum_required(VERSION 3.0...4.1) -project(sdl2_compat VERSION 2.32.64 LANGUAGES C) +project(sdl2_compat VERSION 2.32.66 LANGUAGES C) if(POLICY CMP0074) # CMP0074: find_package() uses <PackageName>_ROOT variables. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/REVISION.txt new/sdl2-compat-2.32.66/REVISION.txt --- old/sdl2-compat-2.32.64/REVISION.txt 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/REVISION.txt 2026-04-04 02:18:01.000000000 +0200 @@ -1 +1 @@ -release-2.32.64-0-g3e1eaa5 +release-2.32.66-0-g2b38b37 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/include/SDL2/SDL_config_unix.h.cmake new/sdl2-compat-2.32.66/include/SDL2/SDL_config_unix.h.cmake --- old/sdl2-compat-2.32.64/include/SDL2/SDL_config_unix.h.cmake 2026-01-01 19:03:02.000000000 +0100 +++ new/sdl2-compat-2.32.66/include/SDL2/SDL_config_unix.h.cmake 2026-02-24 15:55:28.000000000 +0100 @@ -259,6 +259,7 @@ /* Enable OpenGL support */ #define SDL_VIDEO_OPENGL 1 #define SDL_VIDEO_OPENGL_ES 1 +#define SDL_VIDEO_OPENGL_ES2 1 #define SDL_VIDEO_OPENGL_GLX 1 #if defined(__LINUX__) #define SDL_VIDEO_OPENGL_EGL 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/include/SDL2/SDL_revision.h new/sdl2-compat-2.32.66/include/SDL2/SDL_revision.h --- old/sdl2-compat-2.32.64/include/SDL2/SDL_revision.h 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/include/SDL2/SDL_revision.h 2026-04-04 02:18:01.000000000 +0200 @@ -1,6 +1,6 @@ #ifdef SDL_VENDOR_INFO -#define SDL_REVISION "release-2.32.64-0-g3e1eaa5 (" SDL_VENDOR_INFO ")" +#define SDL_REVISION "release-2.32.66-0-g2b38b37 (" SDL_VENDOR_INFO ")" #else -#define SDL_REVISION "release-2.32.64-0-g3e1eaa5" +#define SDL_REVISION "release-2.32.66-0-g2b38b37" #endif #define SDL_REVISION_NUMBER 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/include/SDL2/SDL_version.h new/sdl2-compat-2.32.66/include/SDL2/SDL_version.h --- old/sdl2-compat-2.32.64/include/SDL2/SDL_version.h 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/include/SDL2/SDL_version.h 2026-04-04 02:18:01.000000000 +0200 @@ -58,7 +58,7 @@ */ #define SDL_MAJOR_VERSION 2 #define SDL_MINOR_VERSION 32 -#define SDL_PATCHLEVEL 64 +#define SDL_PATCHLEVEL 66 /** * Macro to determine SDL version program was compiled against. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/src/Makefile.darwin new/sdl2-compat-2.32.66/src/Makefile.darwin --- old/sdl2-compat-2.32.64/src/Makefile.darwin 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/src/Makefile.darwin 2026-04-04 02:18:01.000000000 +0200 @@ -20,7 +20,7 @@ LDFLAGS = -dynamiclib -Wl,-undefined,error -Wl,-single_module #LDFLAGS+= -Wl,-headerpad_max_install_names LDFLAGS+= -Wl,-install_name,"/usr/local/lib/$(DYLIB)" -LDFLAGS+= -Wl,-compatibility_version,3201.0 -Wl,-current_version,3201.64 +LDFLAGS+= -Wl,-compatibility_version,3201.0 -Wl,-current_version,3201.66 LDLIBS = -Wl,-framework,AppKit # this is needed for x86_64 - cross-gcc might not add it. #LDLIBS += -Wl,-lbundle1.o diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/src/Makefile.linux new/sdl2-compat-2.32.66/src/Makefile.linux --- old/sdl2-compat-2.32.64/src/Makefile.linux 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/src/Makefile.linux 2026-04-04 02:18:01.000000000 +0200 @@ -13,7 +13,7 @@ LDFLAGS+= -Wl,--no-undefined LDLIBS = -ldl -SHLIB = libSDL2-2.0.so.0.3200.64 +SHLIB = libSDL2-2.0.so.0.3200.66 OBJ = sdl2_compat.o dynapi/SDL_dynapi.o diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/src/sdl2_compat.c new/sdl2-compat-2.32.66/src/sdl2_compat.c --- old/sdl2-compat-2.32.64/src/sdl2_compat.c 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/src/sdl2_compat.c 2026-04-04 02:18:01.000000000 +0200 @@ -58,7 +58,7 @@ * The number might increment past 90 if there are a ton of releases. */ #define SDL2_COMPAT_VERSION_MINOR 32 -#define SDL2_COMPAT_VERSION_PATCH 64 +#define SDL2_COMPAT_VERSION_PATCH 66 #ifndef SDL2COMPAT_REVISION #define SDL2COMPAT_REVISION "SDL-2." STRINGIFY(SDL2_COMPAT_VERSION_MINOR) "." STRINGIFY(SDL2_COMPAT_VERSION_PATCH) "-no-vcs" @@ -503,6 +503,11 @@ { "tauon/__main__.py", SDL_HINT_VIDEO_WAYLAND_SCALE_TO_DISPLAY, "0" }, { "tauon/__main__.py", SDL_HINT_VIDEO_WAYLAND_ALLOW_LIBDECOR, "0" }, + /* Domino-Chain relies on presented backbuffers having their contents preserved, + * which is undefined behavior on all but the software renderer. + */ + { "domino-chain", SDL_HINT_RENDER_DRIVER, "software" }, + #ifdef SDL2COMPAT_HAVE_X11 /* Stylus Labs Write does its own X11 input handling */ { "Write", "SDL_VIDEO_X11_XINPUT2", "0" }, @@ -2922,6 +2927,12 @@ mode == SDL_LOGICAL_PRESENTATION_DISABLED) { SDL_RenderSetViewport(renderer, NULL); } + + /* SDL2 overwrites the render scale when the window is resized, however, on SDL3, + * the user set scale and logical presentation scales are separate, and will be + * stacked when applied, so set the scale to 1.0 to avoid double scaling. + */ + SDL3_SetRenderScale(renderer, 1.0f, 1.0f); } /* Fixes queue overflow with resize events that aren't processed */ @@ -2944,9 +2955,9 @@ SDL3_SetNumberProperty(props, PROP_WINDOW_EXPECTED_WIDTH, event2.window.data1); SDL3_SetNumberProperty(props, PROP_WINDOW_EXPECTED_HEIGHT, event2.window.data2); SDL3_SetFloatProperty(props, PROP_WINDOW_EXPECTED_SCALE, SDL3_GetWindowDisplayScale(window)); - if (!expected_w || !expected_h) { - /* Don't send the initial size, SDL2 didn't in this case. - * ffplay breaks if the initial size is sent, see https://github.com/libsdl-org/sdl2-compat/issues/268 for details. + if (!(SDL_GetWindowFlags(window) & SDL2_WINDOW_FULLSCREEN) && (!expected_w || !expected_h)) { + /* Don't send the initial windowed size, SDL2 didn't in this case. + * ffplay breaks if the initial windowed size is sent, see https://github.com/libsdl-org/sdl2-compat/issues/268 for details. */ break; } @@ -4057,6 +4068,13 @@ if (rwops2 && freesrc) { SDL_RWclose(rwops2); } + + if (retval && SDL_BITSPERPIXEL(retval->format) < 8) { /* SDL3 can provide BMPs that are < 8bpp. In SDL2, these would get converted to 8bpp. */ + SDL_Surface *cvt = SDL3_ConvertSurfaceAndColorspace(retval, SDL_PIXELFORMAT_INDEX8, SDL3_GetSurfacePalette(retval), SDL3_GetSurfaceColorspace(retval), 0); + SDL3_DestroySurface(retval); + retval = cvt; /* if conversion failed, Surface3to2(), below, will notice. */ + } + return Surface3to2(retval); } @@ -6067,6 +6085,11 @@ } } + /* SDL2 overwrites the user set scale when setting the logical size, while SDL3 tracks it separately. + * Set to 1.0 to avoid double scaling within SDL3. + */ + SDL3_SetRenderScale(renderer, 1.0f, 1.0f); + retval = SDL3_SetRenderLogicalPresentation(renderer, w, h, mode) ? 0 : -1; return retval < 0 ? retval : FlushRendererIfNotBatching(renderer); } @@ -9845,13 +9868,14 @@ SDL_DECLSPEC void SDLCALL SDL_SetWindowMouseGrab(SDL_Window *window, SDL2_bool grabbed) { - SDL_Window *prev_grab_wind = SDL3_GetGrabbedWindow(); + SDL_Window *prev_grab_wind; if (!window) { SDL3_SetError("Invalid window"); return; } + prev_grab_wind = SDL3_GetGrabbedWindow(); SDL3_SetWindowMouseGrab(window, grabbed); if (prev_grab_wind && prev_grab_wind != window && grabbed) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/src/sdl3_include_wrapper.h new/sdl2-compat-2.32.66/src/sdl3_include_wrapper.h --- old/sdl2-compat-2.32.64/src/sdl3_include_wrapper.h 2026-02-03 21:37:24.000000000 +0100 +++ new/sdl2-compat-2.32.66/src/sdl3_include_wrapper.h 2026-03-28 15:29:14.000000000 +0100 @@ -1312,6 +1312,13 @@ #define SDL_OpenXR_LoadLibrary IGNORE_THIS_VERSION_OF_SDL_OpenXR_LoadLibrary #define SDL_OpenXR_UnloadLibrary IGNORE_THIS_VERSION_OF_SDL_OpenXR_UnloadLibrary #define SDL_OpenXR_GetXrGetInstanceProcAddr IGNORE_THIS_VERSION_OF_SDL_OpenXR_GetXrGetInstanceProcAddr +#define SDL_CreateTrayWithProperties IGNORE_THIS_VERSION_OF_SDL_CreateTrayWithProperties +#define SDL_SetGPURenderStateSamplerBindings IGNORE_THIS_VERSION_OF_SDL_SetGPURenderStateSamplerBindings +#define SDL_SetGPURenderStateStorageTextures IGNORE_THIS_VERSION_OF_SDL_SetGPURenderStateStorageTextures +#define SDL_SetGPURenderStateStorageBuffers IGNORE_THIS_VERSION_OF_SDL_SetGPURenderStateStorageBuffers +#define SDL_GDKSuspendRenderer IGNORE_THIS_VERSION_OF_SDL_GDKSuspendRenderer +#define SDL_GDKResumeRenderer IGNORE_THIS_VERSION_OF_SDL_GDKResumeRenderer +#define SDL_IsPhone IGNORE_THIS_VERSION_OF_SDL_IsPhone #define SDL_FUNCTION_POINTER_IS_VOID_POINTER 1 @@ -6454,6 +6461,34 @@ #undef SDL_OpenXR_GetXrGetInstanceProcAddr #endif +#ifdef SDL_CreateTrayWithProperties +#undef SDL_CreateTrayWithProperties +#endif + +#ifdef SDL_SetGPURenderStateSamplerBindings +#undef SDL_SetGPURenderStateSamplerBindings +#endif + +#ifdef SDL_SetGPURenderStateStorageTextures +#undef SDL_SetGPURenderStateStorageTextures +#endif + +#ifdef SDL_SetGPURenderStateStorageBuffers +#undef SDL_SetGPURenderStateStorageBuffers +#endif + +#ifdef SDL_GDKSuspendRenderer +#undef SDL_GDKSuspendRenderer +#endif + +#ifdef SDL_GDKResumeRenderer +#undef SDL_GDKResumeRenderer +#endif + +#ifdef SDL_IsPhone +#undef SDL_IsPhone +#endif + /* see at top. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sdl2-compat-2.32.64/src/version.rc new/sdl2-compat-2.32.66/src/version.rc --- old/sdl2-compat-2.32.64/src/version.rc 2026-02-04 01:49:47.000000000 +0100 +++ new/sdl2-compat-2.32.66/src/version.rc 2026-04-04 02:18:01.000000000 +0200 @@ -3,8 +3,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,32,64,0 - PRODUCTVERSION 2,32,64,0 + FILEVERSION 2,32,66,0 + PRODUCTVERSION 2,32,66,0 FILEFLAGSMASK 0x3fL FILEFLAGS 0x0L FILEOS 0x40004L @@ -17,12 +17,12 @@ BEGIN VALUE "CompanyName", "\0" VALUE "FileDescription", "SDL\0" - VALUE "FileVersion", "2, 32, 64, 0\0" + VALUE "FileVersion", "2, 32, 66, 0\0" VALUE "InternalName", "SDL\0" VALUE "LegalCopyright", "Copyright (C) 2026 Sam Lantinga\0" VALUE "OriginalFilename", "SDL2.dll\0" VALUE "ProductName", "Simple DirectMedia Layer 2.0 wrapper\0" - VALUE "ProductVersion", "2, 32, 64, 0\0" + VALUE "ProductVersion", "2, 32, 66, 0\0" END END BLOCK "VarFileInfo"
