More complete handling of printf formatting in msgid/msgstr checks.
(That commit, r60813, should never have been done to 2.69 branch, will revert it there, sorry :/ ).
This commit is contained in:
@@ -446,10 +446,10 @@ class I18nMessages:
|
||||
"""
|
||||
ret = []
|
||||
default_context = self.settings.DEFAULT_CONTEXT
|
||||
_format = re.compile("%[.0-9]*[tslfd]").findall
|
||||
_format = re.compile(self.settings.CHECK_PRINTF_FORMAT).findall
|
||||
done_keys = set()
|
||||
tmp = {}
|
||||
rem = set()
|
||||
tmp = {}
|
||||
for key, msg in self.msgs.items():
|
||||
msgctxt, msgid, msgstr = msg.msgctxt, msg.msgid, msg.msgstr
|
||||
real_key = (msgctxt or default_context, msgid)
|
||||
@@ -464,7 +464,7 @@ class I18nMessages:
|
||||
done_keys.add(key)
|
||||
if '%' in msgid and msgstr and _format(msgid) != _format(msgstr):
|
||||
if not msg.is_fuzzy:
|
||||
ret.append("Error! msg's format entities are not matched in msgid and msgstr ({} / {})"
|
||||
ret.append("Error! msg's format entities are not matched in msgid and msgstr ({} / \"{}\")"
|
||||
"".format(real_key, msgstr))
|
||||
if fix:
|
||||
msg.msgstr = ""
|
||||
|
||||
Reference in New Issue
Block a user