diff --git a/modules/file_manager.py b/modules/file_manager.py index 1b14e8d..3b9dc10 100644 --- a/modules/file_manager.py +++ b/modules/file_manager.py @@ -99,6 +99,7 @@ class FileManager: Returns: (是否有效, 错误信息, 完整路径) """ + original_path = path project_root = Path(self.project_path).resolve() if project_root != self.project_path: self.project_path = project_root @@ -112,6 +113,8 @@ class FileManager: # 如果成功,说明绝对路径在项目内,转换为相对路径 path = str(test_path.relative_to(project_root)) except ValueError: + if str(original_path).replace("\\", "/").startswith("/workspace"): + return False, "路径必须在项目文件夹内。请检查是否使用的是不带/workspace的相对路径。", None return False, "路径必须在项目文件夹内", None # 检查是否包含向上遍历