mirror of
https://github.com/libsdl-org/SDL.git
synced 2025-12-10 16:42:38 +00:00
eb059538f8773ad72648f694c7c52e4aa11c1647
Adding 3 bytes of alignment to 0x7fff'ffff is not enough to make it overflow a 4-byte unsigned size_t, so this test was not exercising the intended failure mode. We cannot actually make this overflow with a signed 32-bit width and an 8-bit format: the maximum width is not enough to achieve that. However, if we switch to a 24-bit format, we can make the calculation overflow. In SDL 2, this test bug was hidden by the fact that allocating 0x7fff'ffff bytes on a 32-bit platform will usually fail, and SDL 2 reported both "malloc() failed" and "this amount of memory is too large for a size_t" with the same error code. Signed-off-by: Simon McVittie <smcv@collabora.com>
Simple DirectMedia Layer (SDL) Version 3.0
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. If you are migrating to SDL 3.0 from SDL 2.0, the changes are extensively documented in README-migration.md.
Enjoy!
Sam Lantinga (slouken@libsdl.org)
Languages
C
86.4%
C++
5.8%
Objective-C
3.4%
CMake
1.6%
Perl
0.8%
Other
1.8%