Always set "lang" command-line flag, and use instead of "locale", to avoid an assertion in RenderThreadImpl::GetLocale() (issue #759).
git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@875 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
parent
21c2b1ecdd
commit
e9c567599d
|
@ -32,6 +32,7 @@
|
||||||
#include "content/public/browser/resource_dispatcher_host.h"
|
#include "content/public/browser/resource_dispatcher_host.h"
|
||||||
#include "content/public/common/content_switches.h"
|
#include "content/public/common/content_switches.h"
|
||||||
#include "googleurl/src/gurl.h"
|
#include "googleurl/src/gurl.h"
|
||||||
|
#include "ui/base/ui_base_switches.h"
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
|
@ -273,7 +274,7 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
|
||||||
// any associated values) if present in the browser command line.
|
// any associated values) if present in the browser command line.
|
||||||
static const char* const kSwitchNames[] = {
|
static const char* const kSwitchNames[] = {
|
||||||
switches::kProductVersion,
|
switches::kProductVersion,
|
||||||
switches::kLocale,
|
switches::kLang,
|
||||||
switches::kResourcesDirPath,
|
switches::kResourcesDirPath,
|
||||||
switches::kLocalesDirPath,
|
switches::kLocalesDirPath,
|
||||||
switches::kPackLoadingDisabled,
|
switches::kPackLoadingDisabled,
|
||||||
|
|
|
@ -9,9 +9,6 @@ namespace switches {
|
||||||
// Product version string.
|
// Product version string.
|
||||||
const char kProductVersion[] = "product-version";
|
const char kProductVersion[] = "product-version";
|
||||||
|
|
||||||
// Locale string.
|
|
||||||
const char kLocale[] = "locale";
|
|
||||||
|
|
||||||
// Log file path.
|
// Log file path.
|
||||||
const char kLogFile[] = "log-file";
|
const char kLogFile[] = "log-file";
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
namespace switches {
|
namespace switches {
|
||||||
|
|
||||||
extern const char kProductVersion[];
|
extern const char kProductVersion[];
|
||||||
extern const char kLocale[];
|
|
||||||
extern const char kLogFile[];
|
extern const char kLogFile[];
|
||||||
extern const char kLogSeverity[];
|
extern const char kLogSeverity[];
|
||||||
extern const char kLogSeverity_Verbose[];
|
extern const char kLogSeverity_Verbose[];
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
#include "content/public/common/main_function_params.h"
|
#include "content/public/common/main_function_params.h"
|
||||||
#include "ui/base/resource/resource_bundle.h"
|
#include "ui/base/resource/resource_bundle.h"
|
||||||
#include "ui/base/ui_base_paths.h"
|
#include "ui/base/ui_base_paths.h"
|
||||||
|
#include "ui/base/ui_base_switches.h"
|
||||||
|
|
||||||
#if defined(OS_WIN)
|
#if defined(OS_WIN)
|
||||||
#include <Objbase.h> // NOLINT(build/include_order)
|
#include <Objbase.h> // NOLINT(build/include_order)
|
||||||
|
@ -182,8 +183,10 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.locale.length > 0) {
|
if (settings.locale.length > 0) {
|
||||||
command_line->AppendSwitchASCII(switches::kLocale,
|
command_line->AppendSwitchASCII(switches::kLang,
|
||||||
CefString(&settings.locale));
|
CefString(&settings.locale));
|
||||||
|
} else if (!command_line->HasSwitch(switches::kLang)) {
|
||||||
|
command_line->AppendSwitchASCII(switches::kLang, "en-US");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (settings.log_file.length > 0) {
|
if (settings.log_file.length > 0) {
|
||||||
|
@ -409,9 +412,8 @@ void CefMainDelegate::InitializeResourceBundle() {
|
||||||
PathService::Override(ui::DIR_LOCALES, locales_dir);
|
PathService::Override(ui::DIR_LOCALES, locales_dir);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string locale = command_line.GetSwitchValueASCII(switches::kLocale);
|
std::string locale = command_line.GetSwitchValueASCII(switches::kLang);
|
||||||
if (locale.empty())
|
DCHECK(!locale.empty());
|
||||||
locale = "en-US";
|
|
||||||
|
|
||||||
const std::string loaded_locale =
|
const std::string loaded_locale =
|
||||||
ui::ResourceBundle::InitSharedInstanceWithLocale(locale,
|
ui::ResourceBundle::InitSharedInstanceWithLocale(locale,
|
||||||
|
|
Loading…
Reference in New Issue