| Index: chrome/browser/translate/translate_language_list.cc
|
| diff --git a/chrome/browser/translate/translate_language_list.cc b/chrome/browser/translate/translate_language_list.cc
|
| index 99e3c6e650ae436119538dc2f83a72459232ca08..997b538cb213c7dc3692a855476cfea335f63698 100644
|
| --- a/chrome/browser/translate/translate_language_list.cc
|
| +++ b/chrome/browser/translate/translate_language_list.cc
|
| @@ -13,6 +13,7 @@
|
| #include "base/string_util.h"
|
| #include "base/values.h"
|
| #include "chrome/browser/browser_process.h"
|
| +#include "chrome/browser/translate/translate_browser_metrics.h"
|
| #include "chrome/browser/translate/translate_url_util.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "googleurl/src/gurl.h"
|
| @@ -21,6 +22,7 @@
|
| #include "net/http/http_status_code.h"
|
| #include "net/url_request/url_fetcher.h"
|
| #include "net/url_request/url_request_status.h"
|
| +#include "ui/base/l10n/l10n_util.h"
|
|
|
| namespace {
|
|
|
| @@ -231,12 +233,20 @@ void TranslateLanguageList::SetSupportedLanguages(
|
| NOTREACHED();
|
| return;
|
| }
|
| +
|
| + const std::string& locale = g_browser_process->GetApplicationLocale();
|
| +
|
| // Now we can clear our current state...
|
| supported_languages_.clear();
|
| // ... and replace it with the values we just fetched from the server.
|
| for (DictionaryValue::Iterator iter(*target_languages);
|
| !iter.IsAtEnd();
|
| iter.Advance()) {
|
| - supported_languages_.insert(iter.key());
|
| + const std::string& lang = iter.key();
|
| + if (!l10n_util::IsLocaleNameTranslated(lang.c_str(), locale)) {
|
| + TranslateBrowserMetrics::ReportUndisplayableLanguage(lang);
|
| + continue;
|
| + }
|
| + supported_languages_.insert(lang);
|
| }
|
| }
|
|
|