summaryrefslogtreecommitdiff
path: root/indra/llcommon/llstring.cpp
diff options
context:
space:
mode:
authorVadim Savchuk <vsavchuk@productengine.com>2010-03-26 19:09:11 +0200
committerVadim Savchuk <vsavchuk@productengine.com>2010-03-26 19:09:11 +0200
commitb7d0bb9e1ed7aab7eb6d4bb0eb129778892f503a (patch)
tree7f5028e5d72996d65ac5827729959b2cbcbd01b3 /indra/llcommon/llstring.cpp
parent5a12802503b8e557b5cdd99202466bb293a4474f (diff)
Fixed bug EXT-6399 (System locale is the same for all languages).
Problem: * English locale was set for all languages. * Specifying a correct locale didn't affect anything, including date/time formatting. My investigation has shown that LLStringUtil was instantiated twice: in the main binary and in libllcommon.so. Because LLStringUtil::setLocale() was called from newview and getLocale() was called from llcommon, they effectively used *different* instances of LLStringUtil::sLocale. Hence getLocale() always returned empty string. This seems to be caused by get/setLocale() methods not being dllexported. The fix instantiates get/setLocale() and sLocale in llcommon and exposes them to use from newview (i.e. prevents multiple instantiation). Besides, I specified correct locale names for all languages and platforms. Reviewed by Leyla: https://codereview.productengine.com/secondlife/r/104/ --HG-- branch : product-engine
Diffstat (limited to 'indra/llcommon/llstring.cpp')
-rw-r--r--indra/llcommon/llstring.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/indra/llcommon/llstring.cpp b/indra/llcommon/llstring.cpp
index 5f3d9d6582..b5a73ec1d1 100644
--- a/indra/llcommon/llstring.cpp
+++ b/indra/llcommon/llstring.cpp
@@ -911,6 +911,20 @@ bool LLStringUtil::simpleReplacement(std::string &replacement, std::string token
return false;
}
+//static
+template<>
+void LLStringUtil::setLocale(std::string inLocale)
+{
+ sLocale = inLocale;
+};
+
+//static
+template<>
+std::string LLStringUtil::getLocale(void)
+{
+ return sLocale;
+};
+
// static
template<>
void LLStringUtil::formatNumber(std::string& numStr, std::string decimals)