Go to file
David Gow f6fdbc1e37 video: x11: Fix an invalid SDL_LogError() call
This fixes a compile warning — and possible invalid memory read —
introduced in 9c03d255 ("Add back X11 legacy WM_NAME encodings"), which
was part of PR #5029, fixing Bug #4924.

The issue is with one of the added warnings in X11_GetWindowTitle().
Basically, the "title" variable passed to SDL_LogError() hasn't been
initialised yet: we could pass propdata in directly, but it's better to
move the SDL_LogError() call until after title is set, IMHO.

This fixes the following warning from gcc (SUSE Linux) 11.2.1:
In file included from /home/david/Development/SDL/src/video/x11/../../SDL_internal.h:45,
                 from /home/david/Development/SDL/src/video/x11/SDL_x11window.c:21:
/home/david/Development/SDL/src/video/x11/SDL_x11window.c: In function 'X11_GetWindowTitle':
/home/david/Development/SDL/src/video/x11/../../dynapi/SDL_dynapi_overrides.h:33:22: warning: '%s' directive argument is null [-Wformat-overflow=]
   33 | #define SDL_LogDebug SDL_LogDebug_REAL
/home/david/Development/SDL/src/video/x11/SDL_x11window.c:720:13: note: in expansion of macro 'SDL_LogDebug'
  720 |             SDL_LogDebug(SDL_LOG_CATEGORY_VIDEO, "Failed to convert WM_NAME title expecting UTF8! Title: %s", title);
      |             ^~~~~~~~~~~~
2021-11-29 07:13:25 -08:00
.github CI: Add iOS and tvOS builds 2021-11-24 22:49:40 +03:00
VisualC removed windows winmm joystick driver 2021-11-23 17:04:40 +03:00
VisualC-WinRT Use WGI instead of XInput for Windows 10 UWP apps 2021-11-27 10:24:32 -08:00
Xcode Include SDL_hidapi.h in the public headers 2021-11-27 07:56:23 -08:00
Xcode-iOS remove 'free' in comment 2021-11-22 08:38:46 -08:00
acinclude acinclude/libtool.m4: Apply macos11 patch from libtool bug #44605 2021-01-09 00:11:20 +03:00
android-project Fixed bug #4982 - Failed to open audio_device. Android 5.1 should be ok. 2021-11-20 19:40:26 +01:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts Updated version to 2.0.18 for release 2021-11-26 08:12:45 -08:00
cmake Check for O_CLOEXEC definition in fcntl.h at configuration time, 2021-11-27 19:23:10 +03:00
debian Updated version to 2.0.18 for release 2021-11-26 08:12:45 -08:00
docs fixed typo: ervironment to environment 2021-11-22 11:35:40 +03:00
include Fixed ABI break in SDL test header 2021-11-28 08:54:18 -08:00
src video: x11: Fix an invalid SDL_LogError() call 2021-11-29 07:13:25 -08:00
test testnativeos2.c: make its code style to match SDL2. 2021-11-28 23:02:02 +03:00
visualtest visualtest: use SDL_malloc 2021-11-22 08:38:46 -08:00
wayland-protocols wayland: Add support for text-input-unstable-v3 2021-07-29 14:43:46 -07:00
.gitignore testsurround: Add surround sound channel tester 2021-10-30 21:26:03 -07:00
Android.mk mark Android.mk as non-executable 2021-11-12 12:55:28 +03:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt Check for O_CLOEXEC definition in fcntl.h at configuration time, 2021-11-27 19:23:10 +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 development list has moved to forum 2021-06-01 16:49:13 -07:00
LICENSE.txt license: Fixing the license file to be correctly scooped up by Github automation 2021-02-17 13:08:13 -05:00
Makefile.in Install SDL_hidapi.h 2021-11-08 20:35:56 -08:00
Makefile.minimal build libSDL2_test too with Makefile.minimal 2021-11-14 01:10:32 +03:00
Makefile.os2 Updated version to 2.0.18 for release 2021-11-26 08:12:45 -08:00
Makefile.pandora more fixes to standalone makefiles. 2021-11-13 21:56:20 +03:00
Makefile.psp added some more missing sources to standalone makefiles. 2021-11-13 20:35:24 +03:00
Makefile.wiz more fixes to standalone makefiles. 2021-11-13 21:56:20 +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.spec.in license: Fixed references to COPYING.txt that are now LICENSE.txt. 2021-02-18 11:07:26 -05:00
SDL2Config.cmake Fix Debug-only builds with CMake 2021-10-05 18:45:53 -07:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Added a patch note about WinRT/UWP WGI support 2021-11-27 10:55:54 -08:00
autogen.sh bump minimum required autoconf version and revise autogen.sh 2021-04-14 23:20:40 +03: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
configure Check for O_CLOEXEC definition in fcntl.h at configuration time, 2021-11-27 19:23:10 +03:00
configure.ac Check for O_CLOEXEC definition in fcntl.h at configuration time, 2021-11-27 19:23:10 +03:00
sdl2-config-version.cmake.in cmake: Forgot to add this file to revision control. 2020-02-25 14:52:03 -05:00
sdl2-config.cmake.in sdl2-config.cmake.in: Make SDL2::SDL2 work with MinGW, fixes #3665 2021-07-08 14:55:33 -07:00
sdl2-config.in build: Don't duplicate Libs in Libs.private in pkg-config file 2020-04-12 13:24:36 +01:00
sdl2.m4 acinclude & sdl2.m4 updates: 2020-12-22 17:00:28 +03:00
sdl2.pc.in rename PKG_CONFIG_LIBS_PRIV to PKGCONFIG_LIBS_PRIV 2021-04-14 21:40:50 +03:00

README.md

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)