[FIX] tools: skip bad translations

cherry-pick of 428fbd0381 that was reverted at 737ba55e1e as it was making
tests fail

The following commit will correct the tests
This commit only reverts the revert
This commit is contained in:
Martin Trigaux
2018-09-11 09:14:53 +02:00
parent dabe5bfbae
commit fccfd36e05
+8 -4
View File
@@ -1101,10 +1101,14 @@ def trans_load_data(cr, fileobj, fileformat, lang, lang_name=None, verbose=True,
# discard the target from the POT targets.
src = dic['src']
if src in pot_targets:
target = pot_targets[src]
target.value = dic['value']
target.targets.discard((dic['type'], dic['name'], dic['type'] != 'code' and dic['res_id'] or 0))
target = pot_targets.get(src)
if not target or (dic['type'], dic['name'], dic['res_id']) not in target.targets:
_logger.info("Translation '%s' (%s, %s, %s) not found in reference pot, skipping",
src[:60], dic['type'], dic['name'], dic['res_id'])
return
target.value = dic['value']
target.targets.discard((dic['type'], dic['name'], dic['type'] != 'code' and dic['res_id'] or 0))
# This would skip terms that fail to specify a res_id
res_id = dic['res_id']