After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 662576 - Keyboard and options not visible in Hangman
Keyboard and options not visible in Hangman
Status: RESOLVED FIXED
Product: gcompris
Classification: Other
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Bruno Coudoin
Rami Aubourg-Kaires
Depends on:
Blocks:
 
 
Reported: 2011-10-24 05:31 UTC by RedAdmiral
Modified: 2011-10-27 01:00 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description RedAdmiral 2011-10-24 05:31:30 UTC
OS : Ubuntu 11.04
Version : 9.3

The virtual keyboard nor the options (help,home,etc) are visible in the hangman activity. It does not even take inputs from the real keyboard. Only the black board is visible along with tux at the side.
Esc button has to be used to exit the activity.
Comment 1 RedAdmiral 2011-10-24 08:05:16 UTC
Realized this happens because language is set as 'system default'. As soon as one chooses a language this problem is not encountered.
Comment 2 Bruno Coudoin 2011-10-24 19:12:25 UTC
Well you found a workaround but it should not crash in the first place.

Could you please run it again in the default locale. Then run gcompris in a console like this :

gcompris -D > /tmp/gcompris.trace 2>&1


Then reproduce the error by entering the activity, exit GCompris normaly and then attach here the file /tmp/gcompris.trace

Bruno.
Comment 3 RedAdmiral 2011-10-24 19:25:38 UTC
ERROR: Bad equivalence liste ''
Traceback (most recent call last):
  • File "/usr/local/share/gcompris/python/hangman.py", line 99 in start
    self.language = gcompris.gcompris_gettext( gcompris.get_locale_name(gcompris.get_locale()) )
TypeError: must be string, not None

Comment 4 Bruno Coudoin 2011-10-24 20:04:06 UTC
I think I fixed this. I cannot reproduce it on trunk.

If you are not afraid to compile, please try this release :
http://sourceforge.net/projects/gcompris/files/Old_Files/11.09RC1/

You can get all the compilation dependancies by running:
apt-get build-dep gcompris
Comment 5 RedAdmiral 2011-10-25 10:59:54 UTC
Downloaded from the link and compiled but getting same error.
Comment 6 Bruno Coudoin 2011-10-25 20:28:11 UTC
Hum, I have another idea. Could you please run this command in a console and post here the result:

export | grep LANG
Comment 7 RedAdmiral 2011-10-26 10:56:00 UTC
$ export | grep LANG
declare -x GDM_LANG="en_IN"
declare -x LANG="en_IN"
declare -x LANGUAGE="en_IN:en"
Comment 8 RedAdmiral 2011-10-26 10:56:47 UTC
By using error handling in hangman.py gcompris was falling back to english. I made the following changes in /usr/local/share/gcompris/python/hangman.py

# Get the name of the language for the current locale
try:
  self.language = gcompris.gcompris_gettext(gcompris.get_locale_name(gcompris.get_locale()) )
  self.wordlist = gcompris.get_wordlist("wordsgame/default-$LOCALE.xml"

# Fallback to english
except (TypeError):
  self.wordlist = gcompris.get_wordlist("wordsgame/default-en.xml")
  self.language = _("English")
Comment 9 Bruno Coudoin 2011-10-27 00:43:24 UTC
I can confirm the problem and your patch is relevant.
Comment 10 Bruno Coudoin 2011-10-27 01:00:18 UTC
Fixed in commit 6166d9681