[Fontconfig] fontconfig: Branch 'main'
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Dec 15 11:10:33 UTC 2022
src/fcdefault.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
New commits:
commit 6e3fe92b20edb1d91683efa9aea68d35a887a83c
Author: Jean Abou Samra <jean at abou-samra.fr>
Date: Thu Dec 8 13:02:19 2022 +0100
Ignore LC_CTYPE if set to "UTF-8"
LC_CTYPE is set to "UTF-8" on some macOS systems, which is
POSIX-compliant in a strict sense, but breaks the usual assumption
that a locale name has the form "ll_LL.encoding".
https://unix.stackexchange.com/questions/503110/valid-values-for-lc-ctype
Previously, this would cause the warning
Fontconfig warning: ignoring UTF-8: not a valid region tag
Now, we just skip this variable if set to "UTF-8", since that value
doesn't give any language information, and move on to try LANG.
diff --git a/src/fcdefault.c b/src/fcdefault.c
index 6995216..d00c494 100644
--- a/src/fcdefault.c
+++ b/src/fcdefault.c
@@ -62,7 +62,17 @@ retry:
if (!langs || !langs[0])
langs = getenv ("LC_ALL");
if (!langs || !langs[0])
- langs = getenv ("LC_CTYPE");
+ {
+ langs = getenv ("LC_CTYPE");
+ // On some macOS systems, LC_CTYPE is set to "UTF-8", which doesn't
+ // give any languge information. In this case, ignore LC_CTYPE and
+ // continue the search with LANG.
+ if (langs && (FcStrCmpIgnoreCase((const FcChar8 *) langs,
+ (const FcChar8 *)"UTF-8") == 0))
+ {
+ langs = NULL;
+ }
+ }
if (!langs || !langs[0])
langs = getenv ("LANG");
if (langs && langs[0])
More information about the Fontconfig
mailing list