diff options
author | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-14 20:34:05 +0000 |
---|---|---|
committer | shess@chromium.org <shess@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-14 20:34:05 +0000 |
commit | 0d47aab0125cf1e30d60eb0def9cffaf7af3428c (patch) | |
tree | aadbf620b8aead80018b1f36ac7d1b8555574c11 /content/ppapi_plugin | |
parent | a9194ae95ac61dfd85542c7659f39306d694a021 (diff) | |
download | chromium_src-0d47aab0125cf1e30d60eb0def9cffaf7af3428c.zip chromium_src-0d47aab0125cf1e30d60eb0def9cffaf7af3428c.tar.gz chromium_src-0d47aab0125cf1e30d60eb0def9cffaf7af3428c.tar.bz2 |
Flapper has some additional environment expectations.
Flash has some third-party code which depends on additional
environment settings over what we pass to ICU.
BUG=155396,134911
Review URL: https://chromiumcodereview.appspot.com/11116008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161813 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/ppapi_plugin')
-rw-r--r-- | content/ppapi_plugin/ppapi_plugin_main.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/content/ppapi_plugin/ppapi_plugin_main.cc b/content/ppapi_plugin/ppapi_plugin_main.cc index ed68977..16dc82b 100644 --- a/content/ppapi_plugin/ppapi_plugin_main.cc +++ b/content/ppapi_plugin/ppapi_plugin_main.cc @@ -23,6 +23,10 @@ #include "content/public/common/sandbox_init.h" #endif +#if defined(OS_POSIX) && !defined(OS_ANDROID) +#include <stdlib.h> +#endif + #if defined(OS_WIN) sandbox::TargetServices* g_target_services = NULL; #else @@ -53,6 +57,20 @@ int PpapiPluginMain(const content::MainFunctionParams& parameters) { if (command_line.HasSwitch(switches::kLang)) { std::string locale = command_line.GetSwitchValueASCII(switches::kLang); base::i18n::SetICUDefaultLocale(locale); + +#if defined(OS_POSIX) && !defined(OS_ANDROID) + // TODO(shess): Flash appears to have a POSIX locale dependency + // outside of the existing PPAPI ICU support. Certain games hang + // while loading, and it seems related to datetime formatting. + // http://crbug.com/155396 + // http://crbug.com/155671 + // + // ICU can accept "en-US" or "en_US", but POSIX wants "en_US". + // TODO(shess): "en_US.UTF-8" might be even better. + std::replace(locale.begin(), locale.end(), '-', '_'); + setlocale(LC_ALL, locale.c_str()); + setenv("LANG", locale.c_str(), 0); +#endif } MessageLoop main_message_loop; |