From 029668bf207f41dd065b732670ef6374e16f1df7 Mon Sep 17 00:00:00 2001 From: Dimitur Kirov Date: Sat, 22 Apr 2006 08:53:01 +0000 Subject: [PATCH] unsupported locale error is skipped and we use en for wiki search (better to search in english wikipedia than not having gajim at all) --- src/common/connection_handlers.py | 5 +++++ src/common/gajim.py | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/common/connection_handlers.py b/src/common/connection_handlers.py index 978d2b6bc..258eee0e9 100644 --- a/src/common/connection_handlers.py +++ b/src/common/connection_handlers.py @@ -23,6 +23,7 @@ import base64 import sha import socket import sys +import locale from calendar import timegm @@ -1232,7 +1233,9 @@ class ConnectionHandlers(ConnectionVcard, ConnectionBytestream, ConnectionDisco) mtype = msg.getType() subject = msg.getSubject() # if not there, it's None tim = msg.getTimestamp() + locale.setlocale(locale.LC_TIME, 'C') tim = time.strptime(tim, '%Y%m%dT%H:%M:%S') + locale.setlocale(locale.LC_TIME, '') tim = time.localtime(timegm(tim)) frm = helpers.get_full_jid_from_iq(msg) jid = helpers.get_jid_from_iq(msg) @@ -1361,7 +1364,9 @@ class ConnectionHandlers(ConnectionVcard, ConnectionBytestream, ConnectionDisco) if x.getNamespace() == common.xmpp.NS_DELAY: # JEP-0091 tim = prs.getTimestamp() + locale.setlocale(locale.LC_TIME, 'C') tim = time.strptime(tim, '%Y%m%dT%H:%M:%S') + locale.setlocale(locale.LC_TIME, '') timestamp = time.localtime(timegm(tim)) if x.getNamespace() == 'http://delx.cjb.net/protocol/roster-subsync': # see http://trac.gajim.org/ticket/326 diff --git a/src/common/gajim.py b/src/common/gajim.py index d60513e5e..62566239d 100644 --- a/src/common/gajim.py +++ b/src/common/gajim.py @@ -71,8 +71,11 @@ try: MY_EMOTS_PATH = MY_EMOTS_PATH.decode(sys.getfilesystemencoding()) except: pass - -LANG = locale.getdefaultlocale()[0] # en_US, fr_FR, el_GR etc.. +try: + LANG = locale.getdefaultlocale()[0] # en_US, fr_FR, el_GR etc.. +except (ValueError, locale.Error): + # unknown locale, use en is better than fail + LANG = None if LANG is None: LANG = 'en' else: