Update auto_translator.py to fix the Path Traversal Vulnerability
This commit is contained in:
committed by
GitHub
parent
eb41c2ff6a
commit
794792e0f8
12
.github/auto_translator.py
vendored
12
.github/auto_translator.py
vendored
@@ -6,9 +6,13 @@ import os
|
|||||||
|
|
||||||
|
|
||||||
def get_path(lang):
|
def get_path(lang):
|
||||||
# if lang == 'en':
|
base_dir = os.path.abspath('../assets/translations')
|
||||||
# return f'../assets/translations/strings.i18n.json'
|
lang_file = f'strings_{lang}.i18n.json'
|
||||||
return f'../assets/translations/strings_{lang}.i18n.json'
|
path = os.path.join(base_dir, lang_file)
|
||||||
|
if path.startswith(base_dir):
|
||||||
|
return path
|
||||||
|
else:
|
||||||
|
raise ValueError('Invalid language file path')
|
||||||
|
|
||||||
|
|
||||||
def read_translate(lang):
|
def read_translate(lang):
|
||||||
@@ -43,5 +47,5 @@ if __name__ == "__main__":
|
|||||||
translator = GoogleTranslator(source=src, target=dst if dst != 'zh' else "zh-CN")
|
translator = GoogleTranslator(source=src, target=dst if dst != 'zh' else "zh-CN")
|
||||||
recursive_translate(src_pofile, dst_pofile, translator)
|
recursive_translate(src_pofile, dst_pofile, translator)
|
||||||
|
|
||||||
with open(get_path(dst), 'w') as df:
|
with open(os.path.abspath(get_path(dst)), 'w') as df:
|
||||||
json.dump(dst_pofile, df, ensure_ascii=False, indent=4)
|
json.dump(dst_pofile, df, ensure_ascii=False, indent=4)
|
||||||
|
|||||||
Reference in New Issue
Block a user