mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-01-07 13:53:17 +00:00
wayland: Check that all required dynamic symbols have been successfully resolved at init time
Ensure that all hard dependencies are resolved when dynamically loading the libraries required for the Wayland backend and fail gracefully if a required module was not initialized successfully.
This commit is contained in:
committed by
Sam Lantinga
parent
90795291e4
commit
e22f5ed7d3
@@ -152,8 +152,11 @@ int SDL_WAYLAND_LoadSymbols(void)
|
||||
#define SDL_WAYLAND_INTERFACE(iface) WAYLAND_##iface = (struct wl_interface *)WAYLAND_GetSym(#iface, thismod, SDL_TRUE);
|
||||
#include "SDL_waylandsym.h"
|
||||
|
||||
if (SDL_WAYLAND_HAVE_WAYLAND_CLIENT) {
|
||||
/* all required symbols loaded. */
|
||||
if (SDL_WAYLAND_HAVE_WAYLAND_CLIENT &&
|
||||
SDL_WAYLAND_HAVE_WAYLAND_CURSOR &&
|
||||
SDL_WAYLAND_HAVE_WAYLAND_EGL &&
|
||||
SDL_WAYLAND_HAVE_WAYLAND_XKB) {
|
||||
/* All required symbols loaded, only libdecor is optional. */
|
||||
SDL_ClearError();
|
||||
} else {
|
||||
/* in case something got loaded... */
|
||||
|
||||
Reference in New Issue
Block a user