Simple Directmedia Layer
Go to file
Simon McVittie feaf52dba6 test: Fix encoding declaration for RGB24 test images
All of these test images are provided as an octal dump of
3-bytes-per-pixel data with red, green and blue bytes in that order,
referred to as RGB24 in SDL's taxonomy. However, the call to
SDL_CreateRGBSurfaceFrom() used masks that would have been appropriate
for RGBA32 data.

On little-endian platforms, the test images loaded as intended anyway,
because SDL does not actually check all four masks before deciding to
use RGB24 (it only looks at the red mask), and the red channel happens to
be in the 0x000000FF position for both RGB24 and RGBA32 on little-endian.

Unfortunately, on big-endian platforms, the required masks are not the
same and the call failed with "Unknown pixel format". As far as I can
tell, this means testautomation_surface has never succeeded on big-endian
platforms, but presumably nobody has tried to run it on such platforms
until now.

In the SDL 3 branch, this was fixed as a side-effect of commit
932f6134 "Remove mask versions of SDL_CreateRGBSurface* #6701  (#6711)",
which I have used as a reference to confirm that RGB24 is correct.

Resolves: https://github.com/libsdl-org/SDL/issues/8817
Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-01-10 06:09:40 -08:00
.github ci: re-enable Intel compilers on ci 2023-11-09 18:07:10 +01:00
acinclude autotools: revised and silenced esound detection a bit. 2022-09-24 20:01:04 +03:00
android-project Added a runtime check for BLUETOOTH_CONNECT in addition to BLUETOOTH (thanks @perepujal!) 2023-12-24 06:51:48 -08:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts Updated copyright for 2024 2024-01-01 13:19:49 -08:00
cmake cmake: check if CMP0087 exists before setting it (#8613) 2023-11-25 21:42:55 +00:00
docs cmake: fix uses of undefined macro identifiers (-Wundef) 2023-11-17 03:06:26 +00:00
include gamecontroller: Fix function name in cherry-picked documentation 2024-01-08 11:09:55 -08:00
mingw/pkg-support/cmake cmake: else() does not need an argument 2022-10-20 13:29:35 +02:00
src test: Fix encoding declaration for RGB24 test images 2024-01-10 06:09:40 -08:00
test test/acinclude.m4 (AM_PATH_SDL2): apply recent sdl2.m4 PKG_CONFIG patch 2024-01-09 17:11:10 +03:00
VisualC Added Steam Input API support for game controllers 2023-12-20 13:29:57 -08:00
VisualC-GDK Updated copyright for 2024 2024-01-01 13:19:49 -08:00
VisualC-WinRT Added Steam Input API support for game controllers 2023-12-20 13:29:57 -08:00
visualtest Remove unneeded semicolon 2022-11-17 10:43:45 +01:00
wayland-protocols Support wayland fractional scale protocol 2022-11-29 16:37:02 -05:00
Xcode Updated copyright for 2024 2024-01-01 13:19:49 -08:00
Xcode-iOS/Demos [SDL2] pointer boolean (#8523) 2023-11-10 06:30:56 -08:00
.clang-format Commented out syntax that causes Visual Studio 2019 to complain on every edit 2022-12-02 00:43:46 -08:00
.editorconfig editorconfig: remove trailing whitespace in source code 2022-12-26 10:34:45 -08:00
.gitignore cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00
.wikiheaders-options wikiheaders: Bridge README files in the docs directory to wiki. 2023-02-28 11:46:46 -05:00
Android.mk Fixed building with the 16.1.4479499 Android toolchain 2023-06-03 23:55:56 -07:00
autogen.sh Simplified autogen.sh, thanks to @smcv for the tip 2022-05-05 11:54:24 -07:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
cmake_uninstall.cmake.in Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target 2017-10-12 08:44:45 -07:00
CMakeLists.txt Use common generic syscond for platforms with no cond implementation 2023-12-24 06:35:59 -08:00
configure autotools: fix actually wrong use of AC_MSG_RESULT 2023-11-24 14:37:40 +03:00
configure.ac autotools: fix actually wrong use of AC_MSG_RESULT 2023-11-24 14:37:40 +03:00
CREDITS.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
INSTALL.txt INSTALL.txt: Say "macOS" instead of "Mac OS X" in modern times. 2022-03-15 13:07:55 -04:00
LICENSE.txt Updated copyright for 2024 2024-01-01 13:19:49 -08:00
Makefile.in added missing FGREP to Makefile.in. fixed syntax. regenerated configure. 2022-11-24 17:00:20 +03:00
Makefile.minimal Split up CFLAGS construction so it can be overridden 2023-03-29 07:26:34 -07:00
Makefile.os2 Makefile.os2: -DSDL_USE_LIBICONV to fix linkage for GNU libiconv option 2023-12-21 08:55:04 +03:00
Makefile.pandora more fixes to standalone makefiles. 2021-11-13 21:56:20 +03:00
Makefile.w32 fix os/2 and watcom builds after commit 7bb0e839a6 2023-12-21 01:11:24 +03:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md Update and rename README.txt to README.md 2021-03-20 18:46:37 -04:00
sdl2-config-version.cmake.in Add documentation to autotoo'ls sdl2-config-version.cmake.in 2022-05-31 00:10:55 +02:00
sdl2-config.cmake.in cmake: allow users of sdl2-config.cmake to not add -mwindows to the link options 2023-04-18 14:10:12 -04:00
sdl2-config.in Revert "sdl2-config.in: Deprecate sdl2-config" 2022-11-18 06:53:13 -08:00
sdl2.m4 sdl2.m4: Call $PKG_CONFIG rather than hard-coding pkg-config 2024-01-01 08:27:02 -08:00
sdl2.pc.in cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00
SDL2.spec.in license: Fixed references to COPYING.txt that are now LICENSE.txt. 2021-02-18 11:07:26 -05:00
SDL2Config.cmake.in cmake: use FindALSA.cmake to find ALSA library 2022-12-11 23:23:45 +01:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Added patch note for SDL_GDKGetDefaultUser() 2023-11-02 09:59:25 -07:00

Simple DirectMedia Layer (SDL) Version 2.0

https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md

Enjoy!

Sam Lantinga (slouken@libsdl.org)