From 881d6d25fddd6a3fabe6656cd5e3ec9029ef120a Mon Sep 17 00:00:00 2001 From: rubidium Date: Thu, 17 Nov 2011 21:11:34 +0000 Subject: [PATCH] (svn r23242) -Codechange: allow ignoring the sprite font completely when checking whether the font supports a language --- src/strings.cpp | 7 ++++--- src/strings_func.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/strings.cpp b/src/strings.cpp index c9af43e548..5f71f64d6d 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -1799,10 +1799,11 @@ static bool FindMissingGlyphs(const char **str) * mean it might use characters that are not in the * font, which is the whole reason this check has * been added. + * @param base_font Whether to look at the base font as well. */ -void CheckForMissingGlyphsInLoadedLanguagePack() +void CheckForMissingGlyphsInLoadedLanguagePack(bool base_font) { - bool bad_font = FindMissingGlyphs(NULL); + bool bad_font = !base_font || FindMissingGlyphs(NULL); #ifdef WITH_FREETYPE if (bad_font) { /* We found an unprintable character... lets try whether we can find @@ -1814,7 +1815,7 @@ void CheckForMissingGlyphsInLoadedLanguagePack() memcpy(&_freetype, &backup, sizeof(backup)); - if (bad_font) { + if (bad_font && base_font) { /* Our fallback font does miss characters too, so keep the * user chosen font as that is more likely to be any good than * the wild guess we made */ diff --git a/src/strings_func.h b/src/strings_func.h index a52c268be0..ffced1f857 100644 --- a/src/strings_func.h +++ b/src/strings_func.h @@ -196,6 +196,6 @@ const char *GetCurrentLanguageIsoCode(); int CDECL StringIDSorter(const StringID *a, const StringID *b); -void CheckForMissingGlyphsInLoadedLanguagePack(); +void CheckForMissingGlyphsInLoadedLanguagePack(bool base_font = true); #endif /* STRINGS_FUNC_H */