[FIX] tools: verify path before opening

This commit is contained in:
Olivier Dony
2017-06-02 22:13:36 +02:00
parent 380f59bd16
commit 76cd8d2558
+10 -1
View File
@@ -196,7 +196,16 @@ def file_open(name, mode="r", subdir='addons', pathinfo=False):
def _fileopen(path, mode, basedir, pathinfo, basename=None):
name = os.path.normpath(os.path.join(basedir, path))
name = os.path.normpath(os.path.normcase(os.path.join(basedir, path)))
import odoo.modules as addons
paths = addons.module.ad_paths + [config['root_path']]
for addons_path in paths:
addons_path = os.path.normpath(os.path.normcase(addons_path)) + os.sep
if name.startswith(addons_path):
break
else:
raise ValueError("Unknown path: %s" % name)
if basename is None:
basename = name