From: Jiang Jiang <gzjjgod@xxxxxxxxx> Locale environment variables, especially LC_ALL, can be empty but still set. If we don't check, FcGetDefaultLangs() will fallback to "en" for LC_ALL="" case, even if LANG and LC_CTYPE are set. --- src/fcdefault.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/fcdefault.c b/src/fcdefault.c index 674374c..400d9f5 100644 --- a/src/fcdefault.c +++ b/src/fcdefault.c @@ -46,11 +46,11 @@ FcGetDefaultLangs (void) char *langs; langs = getenv ("FC_LANG"); - if (!langs) + if (!langs || !strlen(langs)) langs = getenv ("LC_ALL"); - if (!langs) + if (!langs || !strlen(langs)) langs = getenv ("LC_CTYPE"); - if (!langs) + if (!langs || !strlen(langs)) langs = getenv ("LANG"); if (langs) { -- 1.7.4.1 _______________________________________________ Fontconfig mailing list Fontconfig@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/fontconfig