locale_util: n'attrape pas les exc in-context

Quand une exception était lancée par le code du context, celle-ci était
catchée par le try censé récupérer les prob de locales manquantes. Le code
faulty était alors lancé une deuxième fois alors qu'il n'aurait pas du. Bref,
ça plantait avec une erreur incompréhensible.
This commit is contained in:
Daniel STAN 2014-11-10 23:41:45 +01:00
parent eaf913de6a
commit 632b4499da

View file

@ -15,10 +15,13 @@ def setlocale(name):
with LOCALE_LOCK:
saved = locale.setlocale(locale.LC_ALL)
try:
yield locale.setlocale(locale.LC_ALL, name)
current_val = locale.setlocale(locale.LC_ALL, name)
except:
yield saved
current_val = saved
print "Warning: Failed setting locale %r" % name
try:
yield current_val
finally:
locale.setlocale(locale.LC_ALL, saved)