* apt-pkg/indexfile.cc:
authorMichael Vogt <michael.vogt@ubuntu.com>
Tue, 6 Jun 2006 17:20:28 +0000 (19:20 +0200)
committerMichael Vogt <michael.vogt@ubuntu.com>
Tue, 6 Jun 2006 17:20:28 +0000 (19:20 +0200)
  - add special cases for various languages like pt_BR, zh_CN etc

BUGS
apt-pkg/indexfile.cc

diff --git a/BUGS b/BUGS
index 6bbc6f8..a7b6b11 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -6,3 +6,4 @@ DDTP problems:
   enviroment or Translations apt variable
 - there needs to be a list of locales (pt, sv, en) that need
   both language and country code to get the right file
+  (is in the code in indexfile::LanguageCode(), just a bit ugly 
index 496e68b..bb2210b 100644 (file)
@@ -113,11 +113,14 @@ string pkgIndexFile::LanguageCode()
   {
      string lang = std::setlocale(LC_MESSAGES,NULL);
 
-     // FIXME: this needs to be added
      // we have a mapping of the language codes that contains all the language
      // codes that need the country code as well 
      // (like pt_BR, pt_PT, sv_SE, zh_*, en_*)
-
+     char *need_full_langcode[] = { "pt","sv","zh","en", NULL };
+     for(char **s = need_full_langcode;*s != NULL; s++)
+       if(lang.find(*s) == 0)
+          return lang.substr(0,5);
+     
      if(lang.size() > 2)
        return lang.substr(0,2);
      else