Skip to content
This repository was archived by the owner on Nov 6, 2023. It is now read-only.

Commit da793bb

Browse files
Hainishzoracon
authored andcommitted
Ensure that the translations script does not attempt to convert nonexistant translation files (#18667)
1 parent 8f741cb commit da793bb

File tree

1 file changed

+19
-17
lines changed

1 file changed

+19
-17
lines changed

utils/chromium-translations.py

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,25 @@
1515
message_regex = re.compile("<!ENTITY https-everywhere\.([\w.-]+) \"(.*?)\">")
1616

1717
def convert(locale):
18-
target_messages = {}
19-
with open(os.path.join(source_dir, locale, "https-everywhere.dtd"), 'r', encoding='utf-8') as f:
20-
for line in f:
21-
m = message_regex.search(line)
22-
if m:
23-
message_name = m.group(1)
24-
message_value = m.group(2)
25-
message_name = re.sub("[.-]", "_", message_name)
26-
target_messages[message_name] = {
27-
"message": message_value
28-
}
29-
target_dir = os.path.join(dest_dir, locale)
30-
if not os.path.isdir(target_dir):
31-
os.mkdir(target_dir)
32-
with open(os.path.join(target_dir, "messages.json"), "w") as out_file:
33-
out_file.write(json.dumps(target_messages, sort_keys=True, indent=4))
18+
translation_file = os.path.join(source_dir, locale, "https-everywhere.dtd")
19+
if os.path.isfile(translation_file):
20+
target_messages = {}
21+
with open(translation_file, 'r', encoding='utf-8') as f:
22+
for line in f:
23+
m = message_regex.search(line)
24+
if m:
25+
message_name = m.group(1)
26+
message_value = m.group(2)
27+
message_name = re.sub("[.-]", "_", message_name)
28+
target_messages[message_name] = {
29+
"message": message_value
30+
}
31+
target_dir = os.path.join(dest_dir, locale)
32+
if not os.path.isdir(target_dir):
33+
os.mkdir(target_dir)
34+
with open(os.path.join(target_dir, "messages.json"), "w") as out_file:
35+
out_file.write(json.dumps(target_messages, sort_keys=True, indent=4))
3436

3537
for locale in os.listdir(source_dir):
3638
if not "." in locale:
37-
convert(locale)
39+
convert(locale)

0 commit comments

Comments
 (0)