Public bug reported:

Binary package hint: gnome-menus

When the LANGUAGE environment variable is set to a different language
code than what is specified in LANG or LC_MESSSAGES, LANGUAGE should be
preferred. gnome-menus only takes LC_MESSAGES into account.

Test case:
LANG = de_DE.utf8
LANGUAGE = en_US:en

Expected result: the menus are displayed in English.
Actual result: The top layer of the mneus (Applications, Places, System) is 
displayed in English, all the subsequent entries are displayed in German.

When grepping the code for 'locale', I found this snippet in libmenu
/entry-directories.c:

locale = g_strdup (setlocale (LC_MESSAGES, NULL));
  if (locale == NULL)
    {
      menu_verbose ("cached_dir_load_entries_from_cache_file(): setlocale() 
failed, aborting\n");
      return FALSE;
    }

  /* canonicalize .UTF-8 to .utf8 (only happens at end of string) */
  s = strstr (locale, ".UTF-8");
  if (s != NULL)
      strcpy (s, ".utf8");

  g_snprintf (cache_file, sizeof(cache_file), "%s/desktop.%s.cache", dirname, 
locale);
  g_free (locale);


I think this should be modified to something like this:
if LANGUAGE is set, get the value; split the language codes by the ':' 
delimiter, try if dirname/desktop.languagecode.cache is present, if not try the 
next language code; else try LC_MESSAGES.

Not sure if anything else needs to be modified though.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: gnome-menus 2.30.0-0ubuntu2
ProcVersionSignature: Ubuntu 2.6.32-19.28-generic 2.6.32.10+drm33.1
Uname: Linux 2.6.32-19-generic i686
Architecture: i386
Date: Tue Apr  6 22:20:59 2010
EcryptfsInUse: Yes
ProcEnviron:
 LANGUAGE=en_US:en
 LANG=de_DE.utf8
 SHELL=/bin/bash
SourcePackage: gnome-menus

** Affects: gnome-menus (Ubuntu)
     Importance: High
         Status: Triaged


** Tags: apport-bug i386 lucid

-- 
gnome-menus does not honour LANGUAGE variable
https://bugs.launchpad.net/bugs/556545
You received this bug notification because you are a member of Ubuntu
Desktop Bugs, which is subscribed to gnome-menus in ubuntu.

-- 
desktop-bugs mailing list
desktop-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to