From 2e81052b8793f8814e126c6d4f7f0597490aa7f5 Mon Sep 17 00:00:00 2001 From: "neil%parkwaycc.co.uk" Date: Tue, 18 May 2004 10:14:30 +0000 Subject: [PATCH] Bug 243418 Fix JS strict warning: reference to undefined property tokens[0] r=db48x sr=alecf git-svn-id: svn://10.0.0.236/trunk@156522 18797224-902f-48f8-a5cc-f745e15eee43 --- .../browser/resources/content/metadata.js | 48 +++++-------------- 1 file changed, 12 insertions(+), 36 deletions(-) diff --git a/mozilla/xpfe/browser/resources/content/metadata.js b/mozilla/xpfe/browser/resources/content/metadata.js index 28a687ada11..54951e84b07 100644 --- a/mozilla/xpfe/browser/resources/content/metadata.js +++ b/mozilla/xpfe/browser/resources/content/metadata.js @@ -517,29 +517,22 @@ function convertLanguageCode(abbr) { if (!abbr) return ""; var result; - var language = ""; - var region; - var is_region_set = false; + var region = ""; var tokens = abbr.split("-"); + var language = tokens.shift(); - if (tokens[0] === "x" || tokens[0] === "i") + if (language == "x" || language == "i") { - // x and i prefixes mean unofficial ones. So we upper-case the first + // x and i prefixes mean unofficial ones. So we proper-case the next // word and leave the rest. - tokens.shift(); - - if (tokens[0]) + if (tokens.length > 0) { // Upper-case first letter language = tokens[0].substr(0, 1).toUpperCase() + tokens[0].substr(1); tokens.shift(); - if (tokens[0]) - { - // Add on the rest as space-separated strings inside the brackets - region = tokens.join(" "); - is_region_set = true; - } + // Add on the rest as space-separated strings inside the brackets + region = tokens.join(" "); } } else @@ -548,43 +541,26 @@ function convertLanguageCode(abbr) // and the rest as strings. try { - language = gLangBundle.getString(tokens[0]); + language = gLangBundle.getString(language); } catch (e) { - // Language not present in lang bundle - language = tokens[0]; } - tokens.shift(); - - if (tokens[0]) + if (tokens.length > 0) { try { - // We don't add it on to the result immediately - // because we want to get the spacing right. - region = gRegionBundle.getString(tokens[0].toLowerCase()); - - tokens.shift(); - - if (tokens[0]) - { - // Add on the rest as space-separated strings inside the brackets - region += " " + tokens.join(" "); - } + tokens[0] = gRegionBundle.getString(tokens[0].toLowerCase()); } catch (e) { - // Region not present in region bundle - region = tokens.join(" "); } - - is_region_set = true; + region = tokens.join(" "); } } - if (is_region_set) { + if (region) { result = gMetadataBundle.getFormattedString("languageRegionFormat", [language, region]); } else {