Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(290)

Side by Side Diff: components/translate/language_detection/language_detection_util.cc

Issue 203043002: Fix "unreachable code" warnings (MSVC warning 4702), misc. edition. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/translate/language_detection/language_detection_util.h" 5 #include "components/translate/language_detection/language_detection_util.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/metrics/field_trial.h" 8 #include "base/metrics/field_trial.h"
9 #include "base/strings/string_split.h" 9 #include "base/strings/string_split.h"
10 #include "base/strings/string_util.h" 10 #include "base/strings/string_util.h"
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 if (language.empty()) { 238 if (language.empty()) {
239 translate::ReportLanguageVerification( 239 translate::ReportLanguageVerification(
240 translate::LANGUAGE_VERIFICATION_CLD_ONLY); 240 translate::LANGUAGE_VERIFICATION_CLD_ONLY);
241 return cld_language; 241 return cld_language;
242 } 242 }
243 243
244 if (cld_language == kUnknownLanguageCode) { 244 if (cld_language == kUnknownLanguageCode) {
245 translate::ReportLanguageVerification( 245 translate::ReportLanguageVerification(
246 translate::LANGUAGE_VERIFICATION_UNKNOWN); 246 translate::LANGUAGE_VERIFICATION_UNKNOWN);
247 return language; 247 return language;
248 } else if (CanCLDComplementSubCode(language, cld_language)) { 248 }
249
250 if (CanCLDComplementSubCode(language, cld_language)) {
249 translate::ReportLanguageVerification( 251 translate::ReportLanguageVerification(
250 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE); 252 translate::LANGUAGE_VERIFICATION_CLD_COMPLEMENT_SUB_CODE);
251 return cld_language; 253 return cld_language;
252 } else if (IsSameOrSimilarLanguages(language, cld_language)) { 254 }
255
256 if (IsSameOrSimilarLanguages(language, cld_language)) {
253 translate::ReportLanguageVerification( 257 translate::ReportLanguageVerification(
254 translate::LANGUAGE_VERIFICATION_CLD_AGREE); 258 translate::LANGUAGE_VERIFICATION_CLD_AGREE);
255 return language; 259 return language;
256 } else if (MaybeServerWrongConfiguration(language, cld_language)) { 260 }
261
262 if (MaybeServerWrongConfiguration(language, cld_language)) {
257 translate::ReportLanguageVerification( 263 translate::ReportLanguageVerification(
258 translate::LANGUAGE_VERIFICATION_TRUST_CLD); 264 translate::LANGUAGE_VERIFICATION_TRUST_CLD);
259 return cld_language; 265 return cld_language;
260 } else {
261 translate::ReportLanguageVerification(
262 translate::LANGUAGE_VERIFICATION_CLD_DISAGREE);
263 // Content-Language value might be wrong because CLD says that this page
264 // is written in another language with confidence.
265 // In this case, Chrome doesn't rely on any of the language codes, and
266 // gives up suggesting a translation.
267 return std::string(kUnknownLanguageCode);
268 } 266 }
269 267
270 return language; 268 // Content-Language value might be wrong because CLD says that this page is
269 // written in another language with confidence. In this case, Chrome doesn't
270 // rely on any of the language codes, and gives up suggesting a translation.
271 translate::ReportLanguageVerification(
272 translate::LANGUAGE_VERIFICATION_CLD_DISAGREE);
273 return kUnknownLanguageCode;
271 } 274 }
272 275
273 void CorrectLanguageCodeTypo(std::string* code) { 276 void CorrectLanguageCodeTypo(std::string* code) {
274 DCHECK(code); 277 DCHECK(code);
275 278
276 size_t coma_index = code->find(','); 279 size_t coma_index = code->find(',');
277 if (coma_index != std::string::npos) { 280 if (coma_index != std::string::npos) {
278 // There are more than 1 language specified, just keep the first one. 281 // There are more than 1 language specified, just keep the first one.
279 *code = code->substr(0, coma_index); 282 *code = code->substr(0, coma_index);
280 } 283 }
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 // distinguish from English, and the language is one of well-known languages 380 // distinguish from English, and the language is one of well-known languages
378 // which often provide "en-*" meta information mistakenly. 381 // which often provide "en-*" meta information mistakenly.
379 for (size_t i = 0; i < arraysize(kWellKnownCodesOnWrongConfiguration); ++i) { 382 for (size_t i = 0; i < arraysize(kWellKnownCodesOnWrongConfiguration); ++i) {
380 if (cld_language == kWellKnownCodesOnWrongConfiguration[i]) 383 if (cld_language == kWellKnownCodesOnWrongConfiguration[i])
381 return true; 384 return true;
382 } 385 }
383 return false; 386 return false;
384 } 387 }
385 388
386 } // namespace translate 389 } // namespace translate
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698