diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-07-27 21:23:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-27 21:23:30 +0200 |
commit | 7f0eb944a5cee007c392980f4175e3fb14857793 (patch) | |
tree | 324f04ea893e3184df83267739124e6c3eb06bab /platform/linuxbsd/os_linuxbsd.cpp | |
parent | be4e86b0d9fe9a4bfdfe6506839330692d63c910 (diff) | |
parent | 9ced8bcca3ef01d75c8dbe55855bd7a83ad20251 (diff) | |
download | redot-engine-7f0eb944a5cee007c392980f4175e3fb14857793.tar.gz |
Merge pull request #63551 from bruvzg/font_cfg_dynamic
Diffstat (limited to 'platform/linuxbsd/os_linuxbsd.cpp')
-rw-r--r-- | platform/linuxbsd/os_linuxbsd.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/platform/linuxbsd/os_linuxbsd.cpp b/platform/linuxbsd/os_linuxbsd.cpp index 7a7a99534a..e306c1054b 100644 --- a/platform/linuxbsd/os_linuxbsd.cpp +++ b/platform/linuxbsd/os_linuxbsd.cpp @@ -53,7 +53,7 @@ #include <unistd.h> #ifdef FONTCONFIG_ENABLED -#include <fontconfig/fontconfig.h> +#include "fontconfig-so_wrap.h" #endif void OS_LinuxBSD::alert(const String &p_alert, const String &p_title) { @@ -333,6 +333,9 @@ uint64_t OS_LinuxBSD::get_embedded_pck_offset() const { Vector<String> OS_LinuxBSD::get_system_fonts() const { #ifdef FONTCONFIG_ENABLED + if (!font_config_initialized) { + ERR_FAIL_V_MSG(Vector<String>(), "Unable to load fontconfig, system font support is disabled."); + } HashSet<String> font_names; Vector<String> ret; @@ -377,6 +380,10 @@ Vector<String> OS_LinuxBSD::get_system_fonts() const { String OS_LinuxBSD::get_system_font_path(const String &p_font_name, bool p_bold, bool p_italic) const { #ifdef FONTCONFIG_ENABLED + if (!font_config_initialized) { + ERR_FAIL_V_MSG(String(), "Unable to load fontconfig, system font support is disabled."); + } + String ret; FcConfig *config = FcInitLoadConfigAndFonts(); @@ -733,4 +740,13 @@ OS_LinuxBSD::OS_LinuxBSD() { #ifdef X11_ENABLED DisplayServerX11::register_x11_driver(); #endif + +#ifdef FONTCONFIG_ENABLED +#ifdef DEBUG_ENABLED + int dylibloader_verbose = 1; +#else + int dylibloader_verbose = 0; +#endif + font_config_initialized = (initialize_fontconfig(dylibloader_verbose) == 0); +#endif // FONTCONFIG_ENABLED } |