Crashes when LANG not set in /etc/default/locale and /etc/environment
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
language-selector (Ubuntu) |
Fix Released
|
Undecided
|
Arne Goetje |
Bug Description
gnome-language-
The error message is:
line 59, in getMissingLangPacks
if "_" in default_lang:
TypeError: argument of type 'NoneType' is not iterable
where lines 57-60 of /usr/lib/
57: # now check for a missing default language support
58: default_lang = self.getSystemD
59: if "_" in default_lang:
60: default_lang = default_
and getSystemDefaul
def getSystemDefaul
conffiles = ["/etc/
for fname in conffiles:
if os.path.
for line in open(fname):
return None
Because of the way this function is used, it MAY NOT return None. It should instead return a graceful default: presumably, it should return what is currently returned by the command 'locale' if it is not the C locale, or some graceful default value like en_US.UTF-8.
Changed in language-selector (Ubuntu): | |
status: | New → Confirmed |
summary: |
- Crashes when LANG not set in /etc/default/locale + Crashes when LANG not set in /etc/default/locale and /etc/environment |
Changed in language-selector (Ubuntu): | |
assignee: | nobody → Arne Goetje (arnegoetje) |
status: | Confirmed → Fix Committed |
I've noticed that gnome-language- selector also fails if the initial content of /etc/default/locale is
LANG="C"
That can happen in a manual install, since some people prefer to avoid the heavyweight locales by default, but I don't think it would ever affect a live image style install.
/usr/lib/ python2. 6/dist- packages/ LanguageSelecto r/gtk/GtkLangua geSelector. py:837: GtkWarning: gtk_cell_ view_set_ cell_data: assertion `cell_view- >priv-> displayed_ row != NULL' failed child() .get_cell_ renderers( )[0] python2. 6/dist- packages/ LanguageSelecto r/gtk/GtkLangua geSelector. py:804: GtkWarning: gtk_cell_ view_set_ cell_data: assertion `cell_view- >priv-> displayed_ row != NULL' failed child() .get_cell_ renderers( )[0] gnome-language- selector" , line 34, in <module> options) python2. 6/dist- packages/ LanguageSelecto r/gtk/GtkLangua geSelector. py", line 172, in __init__ updateSystemDef aultCombo( ) python2. 6/dist- packages/ LanguageSelecto r/gtk/GtkLangua geSelector. py", line 58, in wrapper python2. 6/dist- packages/ LanguageSelecto r/gtk/GtkLangua geSelector. py", line 815, in updateSystemDef aultCombo o.translate( defaultLangCode ) python2. 6/dist- packages/ LanguageSelecto r/LocaleInfo. py", line 148, in translate language( locale) python2. 6/dist- packages/ LanguageSelecto r/LocaleInfo. py", line 110, in translate_language dgettext( 'iso_639' , self._lang[lang])
cell = combo.get_
/usr/lib/
cell = combo.get_
Traceback (most recent call last):
File "/usr/bin/
options=
File "/usr/lib/
self.
File "/usr/lib/
res = f(*args, **kwargs)
File "/usr/lib/
defaultLangName = self._localeinf
File "/usr/lib/
return self.translate_
File "/usr/lib/
lang_name = gettext.
KeyError: 'C'