# HG changeset patch # User Thomas Waldmann # Date 1190137715 -7200 # Node ID 18cba7defa5a7263b042c709dc0b4e2edb04d510 # Parent 78c516164e019c001e0d748ea68c73332be18963 i18n: avoid crashing, log errors in po files, update i18n diff -r 78c516164e01 -r 18cba7defa5a MoinMoin/i18n/__init__.py --- a/MoinMoin/i18n/__init__.py Fri Feb 22 22:11:51 2008 +0100 +++ b/MoinMoin/i18n/__init__.py Tue Sep 18 19:48:35 2007 +0200 @@ -26,6 +26,7 @@ debug = 0 import os, gettext, glob +import logging from MoinMoin import caching @@ -139,11 +140,17 @@ # binary files have to be opened in the binary file mode! self.translation = gettext.GNUTranslations(f) self.info = info = self.translation.info() - self.name = info['x-language'] - self.ename = info['x-language-in-english'] - self.direction = info['x-direction'] - assert self.direction in ('ltr', 'rtl', ) - self.maintainer = info['last-translator'] + try: + self.name = info['x-language'] + self.ename = info['x-language-in-english'] + self.direction = info['x-direction'] + self.maintainer = info['last-translator'] + except KeyError, err: + logging.debug("%r %s" % (self.language, str(err))) + try: + assert self.direction in ('ltr', 'rtl', ) + except (AttributeError, AssertionError), err: + logging.debug("%r %s" % (self.language, str(err))) def formatMarkup(self, request, text, currentStack=[]): """