From 8ef01bd74e313b9b1e9732a76f91c59deeca8a02 Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Mon, 5 Nov 2012 19:52:35 +0100 Subject: [PATCH] Fix #8193 - wrong LC_* vars if there's no country code. --- src/bin/locale/locale.cpp | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/bin/locale/locale.cpp b/src/bin/locale/locale.cpp index 53d787a7c4..2635fc945a 100644 --- a/src/bin/locale/locale.cpp +++ b/src/bin/locale/locale.cpp @@ -43,8 +43,12 @@ print_formatting_conventions() { BFormattingConventions conventions; BLocale::Default()->GetFormattingConventions(&conventions); - printf("%s_%s.UTF-8\n", conventions.LanguageCode(), - conventions.CountryCode()); + if (conventions.CountryCode() != NULL) { + printf("%s_%s.UTF-8\n", conventions.LanguageCode(), + conventions.CountryCode()); + } else { + printf("%s.UTF-8\n", conventions.LanguageCode()); + } } @@ -53,12 +57,15 @@ print_time_conventions() { BFormattingConventions conventions; BLocale::Default()->GetFormattingConventions(&conventions); - if (conventions.UseStringsFromPreferredLanguage()) { - printf("%s_%s.UTF-8@strings=messages\n", conventions.LanguageCode(), - conventions.CountryCode()); + if (conventions.CountryCode() != NULL) { + printf("%s_%s.UTF-8%s\n", conventions.LanguageCode(), + conventions.CountryCode(), + conventions.UseStringsFromPreferredLanguage() + ? "@strings=messages" : ""); } else { - printf("%s_%s.UTF-8\n", conventions.LanguageCode(), - conventions.CountryCode()); + printf("%s.UTF-8%s\n", conventions.LanguageCode(), + conventions.UseStringsFromPreferredLanguage() + ? "@strings=messages" : ""); } }